- 數(shù)據(jù)科學(xué)技術(shù)與應(yīng)用
- 宋暉
- 1467字
- 2020-06-08 17:38:15
1.3 Python語(yǔ)言基礎(chǔ)
本節(jié)簡(jiǎn)要介紹Python 3的基本語(yǔ)法,主要包括后續(xù)章節(jié)所需使用的特性。
1.3.1 常用數(shù)據(jù)類(lèi)型
Python內(nèi)置的常用數(shù)據(jù)類(lèi)型有字符串、布爾量、元組、列表和字典。
數(shù)字(Number)包括整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)類(lèi)型,使用方法類(lèi)似于數(shù)學(xué)計(jì)算。布爾值(Bool)有固定的表示,True表示真,F(xiàn)alse表示假。

下面重點(diǎn)介紹數(shù)據(jù)分析中常用的字符串、元組、列表和字典數(shù)據(jù)類(lèi)型。
1.字符串(string)
字符串是由一系列字符組成的數(shù)據(jù)類(lèi)型,使用一對(duì)單引號(hào)'、雙引號(hào)"或三引號(hào)'''表示。字符串變量的值不可以修改,任何類(lèi)型的變量都可以使用內(nèi)置函數(shù)str()轉(zhuǎn)換為字符串。

Python內(nèi)置了字符串常用函數(shù),支持字符串查找、替換、比較等功能。
2.元組(tuple)和列表(list)
元組和列表是有序的元素序列,具有相同的索引方式,每個(gè)元素可以是任意類(lèi)型的數(shù)據(jù)。不同的是,元組的數(shù)據(jù)不可修改,列表數(shù)據(jù)可以修改。
元組使用一對(duì)()將所有元素括起來(lái),元素的數(shù)據(jù)類(lèi)型可以不同,如('Wang',32,1.67),元素本身也可以是元組。元組中的元素使用變量名[索引]來(lái)表示,索引范圍[0, n-1]或[-n, -1],如圖1-9所示,其中n為元素個(gè)數(shù)(也稱(chēng)為元組長(zhǎng)度)。

圖1-9 序列的索引


實(shí)際上字符串可以看作元組的特例,每個(gè)元素必須是字符的元組。
列表采用一對(duì)[]表示,是最靈活的序列表示形式,用來(lái)存儲(chǔ)值需要變化的數(shù)據(jù)序列。

3.字典(dictionary)
字典是由一組“鍵-值對(duì)”元素組成的無(wú)序集合,字典元素的“鍵”具有唯一性。鍵和值通過(guò)冒號(hào)連接,不同鍵值對(duì)通過(guò)逗號(hào)隔開(kāi),如{'Wang':1.89, 'Li':1.76}。通過(guò)“鍵”,可以找到與之關(guān)聯(lián)的“值”。

字典數(shù)據(jù)可以通過(guò)“鍵”方便地添加、刪除和修改。

1.3.2 流程控制
1.程序格式
Python采用嚴(yán)格的“縮進(jìn)”來(lái)表示代碼的層次關(guān)系,且只能通過(guò)“縮進(jìn)”表示,如圖1-10所示。要求同一段程序內(nèi),每個(gè)層次“縮進(jìn)”采用的空格數(shù)一致,否則判定為語(yǔ)法錯(cuò)誤。

圖1-10 “縮進(jìn)”表示代碼層次關(guān)系
2.注釋
Python的注釋語(yǔ)句有兩種形式:?jiǎn)涡凶⑨屢浴?”開(kāi)頭,多行注釋用一組"""括起來(lái)。

3.輸入和輸出語(yǔ)句
Python使用input語(yǔ)句將鍵盤(pán)輸入以單個(gè)字符串保存變量,print語(yǔ)句實(shí)現(xiàn)屏幕顯示。

4.分支結(jié)構(gòu)
Python支持單分支結(jié)構(gòu)、雙分支結(jié)構(gòu)和多分支結(jié)構(gòu),基本格式如下。

代碼依次計(jì)算if、elif后面的表達(dá)式,執(zhí)行第一個(gè)結(jié)果為真的表達(dá)式對(duì)應(yīng)的分支語(yǔ)句。如果沒(méi)有任何一個(gè)表達(dá)式結(jié)果為真,則執(zhí)行else對(duì)應(yīng)的語(yǔ)句。
5.循環(huán)結(jié)構(gòu)
Python提供兩種循環(huán)語(yǔ)句,for和while。
1)for循環(huán)在循環(huán)代碼重復(fù)運(yùn)行過(guò)程中,循環(huán)變量根據(jù)給定的序列依次賦值。

代碼for語(yǔ)句循環(huán)5次,變量i依次被賦值1、3、5、7、9,并被累加到變量s上。循環(huán)結(jié)束后,s的值為25。
通常可以使用range(start,end,step)函數(shù)生成指定的數(shù)字序列,函數(shù)按照步長(zhǎng)step在范圍[start,end-1]內(nèi)生成等差序列,start默認(rèn)為0,step默認(rèn)為1。

代碼依次輸出整數(shù)0、2、4、6、8。
2)while語(yǔ)句判斷表達(dá)式的結(jié)果,如果為T(mén)rue繼續(xù)循環(huán),否則中止。

程序判斷用戶(hù)輸入的內(nèi)容是否為空字符串,為空則循環(huán)中止,否則計(jì)算累加和并等待再次輸入。
1.3.3 函數(shù)和方法庫(kù)
1.Python內(nèi)置函數(shù)
Python提供大量的內(nèi)置函數(shù),無(wú)須說(shuō)明,可直接使用。如input函數(shù)、range函數(shù)等,但大部分的第三方庫(kù)(library)或包(package)并沒(méi)有被加載到解釋器中,因此在使用時(shí)需要先導(dǎo)入,Python提供3種導(dǎo)入形式。
1)直接導(dǎo)入整個(gè)方法庫(kù)或包,調(diào)用時(shí)需要加上包名。

2)導(dǎo)入方法庫(kù)中某個(gè)函數(shù),調(diào)用時(shí)直接使用函數(shù)名。

3)導(dǎo)入方法庫(kù)中某個(gè)類(lèi)或函數(shù)并重命名,調(diào)用時(shí)使用臨時(shí)替代名。

2.Python自定義函數(shù)
Python使用關(guān)鍵字def定義函數(shù),函數(shù)定義時(shí),變量類(lèi)型無(wú)須說(shuō)明,同時(shí)可以在參數(shù)列表的最后定義多個(gè)帶有默認(rèn)值的參數(shù)。函數(shù)調(diào)用時(shí),具有默認(rèn)值的形參,可以不傳實(shí)參。

思考與練習(xí)
1.查閱資料,編寫(xiě)Python代碼實(shí)現(xiàn)列表和字典元素的遍歷輸出。
2.使用Jupyter Notebook,將練習(xí)1的程序保存在.ipynb文件中。
- 程守洙《普通物理學(xué)》(第6版)(下冊(cè))筆記和課后習(xí)題(含考研真題)詳解
- 金融學(xué)
- 工程制圖與3D建模習(xí)題集
- 曹龍騏《金融學(xué)》(第3版)筆記和課后習(xí)題(含考研真題)詳解
- 吳侃《高級(jí)日語(yǔ)2》學(xué)習(xí)指南【課文重點(diǎn)+詞匯剖析+語(yǔ)法精解+全文翻譯+練習(xí)答案】
- 軟件優(yōu)化技術(shù)
- 2020年同等學(xué)力申碩《地理學(xué)學(xué)科綜合水平考試》歷年真題及模擬試題詳解
- 谷物與谷物化學(xué)概論
- 公司法學(xué)
- 無(wú)機(jī)及分析化學(xué)
- 石墨烯基納米復(fù)合材料制備與應(yīng)用
- 公共藝術(shù)設(shè)計(jì)
- 化工原理實(shí)驗(yàn)
- 精細(xì)化工概論(第三版)
- TCP-IP協(xié)議及其應(yīng)用