人工智能第2章Python基礎(chǔ)及控制結(jié)構(gòu)_第1頁
人工智能第2章Python基礎(chǔ)及控制結(jié)構(gòu)_第2頁
人工智能第2章Python基礎(chǔ)及控制結(jié)構(gòu)_第3頁
人工智能第2章Python基礎(chǔ)及控制結(jié)構(gòu)_第4頁
人工智能第2章Python基礎(chǔ)及控制結(jié)構(gòu)_第5頁
已閱讀5頁,還剩73頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Python基礎(chǔ)及控制結(jié)構(gòu)北京聯(lián)合大學(xué)01.Python概述02.Python基礎(chǔ)知識(shí)03.控制結(jié)構(gòu)目錄01Python概述Python的發(fā)展、應(yīng)用領(lǐng)域、環(huán)境安裝Python發(fā)展GuidovanRossum誕生1990年創(chuàng)立Python語言Python[`paiθ?n],譯為“蟒蛇”命名Python語言是一個(gè)有開放、開源精神的編程語言Python語言是一個(gè)語法簡潔、跨平臺(tái)、可擴(kuò)展的開源通用腳本語言Python語言擁有者PythonSoftwareFoundation(PSF)PSF致力于保護(hù)Python語言開放、開源和發(fā)展Python發(fā)展Python發(fā)展Python2.0正式發(fā)布2000年10月Python2.7,終結(jié)2.x系列版本的發(fā)展2010年2008年12月Python3.0正式發(fā)布3.0版本重大改進(jìn)3.x是Python語言的現(xiàn)在和未來注意:Python2和Python3不兼容Python1.0正式發(fā)布1994年P(guān)ython的應(yīng)用領(lǐng)域軟件開發(fā)函數(shù)式編程和面向?qū)ο缶幊蘔eb開發(fā)Django,Tornado,F(xiàn)lask人工智能機(jī)器學(xué)習(xí)、深度學(xué)習(xí)數(shù)據(jù)分析numpy、pandas、MatplotlibPython的應(yīng)用領(lǐng)域網(wǎng)絡(luò)爬蟲scrapy云計(jì)算Openstack自動(dòng)化運(yùn)維SaltstackAnsible環(huán)境安裝官方網(wǎng)站/根據(jù)系統(tǒng)選擇對(duì)應(yīng)的安裝包Anancoda/環(huán)境安裝Pycharm/pycharm/VSCode/JupyterNotebookSpyderIDLE開發(fā)工具pycharm是標(biāo)準(zhǔn)的python開發(fā)環(huán)境,功能最全,唯一的缺點(diǎn)就是啟動(dòng)有點(diǎn)慢JupyterNotebook和Spyder都是Anaconda安裝后自帶的開發(fā)工具VSCode是一款免費(fèi)開源的輕量級(jí)代碼編輯器IDLE是Python自帶的開發(fā)工具,是應(yīng)用Python第三方庫的圖形接口庫Tkinter開發(fā)的一個(gè)圖形界面的開發(fā)工具02Python基礎(chǔ)知識(shí)程序的格式框架重量單位轉(zhuǎn)換實(shí)例程序的格式框架注釋:用于提高代碼可讀性的輔助性文字,不被執(zhí)行縮進(jìn):一行代碼開始前的空白區(qū)域,表達(dá)程序的格式框架引號(hào):單引號(hào)和雙引號(hào)都是可以使用的例2.1在單獨(dú)使用的時(shí)候,單引號(hào)還是使用雙引號(hào)并沒有區(qū)別。如果運(yùn)行結(jié)果需要輸出單引號(hào)時(shí),則外側(cè)需使用雙引號(hào)括起來如果運(yùn)行結(jié)果需要輸出雙引號(hào)時(shí),則外側(cè)需使用單引號(hào)括起來。>>>print("'Python程序設(shè)計(jì)'"

)'Python程序設(shè)計(jì)'>>>print('"Python程序設(shè)計(jì)"'

)"Python程序設(shè)計(jì)""Python程序設(shè)計(jì)"'Python程序設(shè)計(jì)'均表示字符串02Python基礎(chǔ)知識(shí)變量賦值輸入函數(shù)輸出函數(shù)賦值賦值語句由賦值符號(hào)=構(gòu)成的一行代碼形式:變量=表達(dá)式評(píng)估函數(shù)eval去掉參數(shù)最外側(cè)引號(hào)并執(zhí)行余下語句的函數(shù)注意:賦值時(shí)右側(cè)的類型也會(huì)同時(shí)作用于左側(cè)的變量輸入輸出函數(shù)輸入函數(shù)input<變量>=input(<提示信息字符串>)輸出函數(shù)printprint(<擬輸出字符串或字符串變量>)格式:格式:formaterror重量為123.4567kg重量為123.46kg02Python基礎(chǔ)知識(shí)變量命名保留字變量命名規(guī)則變量命名規(guī)則:大小寫字母、數(shù)字、下劃線和中文等字符及組合注意事項(xiàng):首字符不能是數(shù)字、不與保留字相同、大小寫敏感name_1、name123、_name、用戶名Python與pythonNum&1、123num、for合法不同的變量不合法示例保留字保留字被編程語言內(nèi)部定義并保留使用的標(biāo)識(shí)符Python語言有35個(gè)保留字(也叫關(guān)鍵字)andelifimportraiseglobalaselseinreturnnonlocalassertexceptistryTruebreakfinallylambdawhileFalseclassfornotwithNonecontinuefromoryield

asyncdefifpassdelawait★★★輸出所有關(guān)鍵字:importkeywordprint(keyword.kwlist)02Python基礎(chǔ)知識(shí)數(shù)字類型數(shù)字類型基本數(shù)據(jù)類型字符串類型基本數(shù)據(jù)類型數(shù)字類型整數(shù)數(shù)學(xué)中的整數(shù)45、-2、0浮點(diǎn)數(shù)數(shù)學(xué)中的實(shí)數(shù),帶小數(shù)部分1.9、-59.3、7.0復(fù)數(shù)z=a+bj(a,b均為實(shí)數(shù)),a稱為實(shí)部,b稱為虛部示例示例3+4j示例數(shù)值運(yùn)算操作符及使用描

述x+y加,x與y之和x–y減,x與y之差x*y乘,x與y之積x/y除,x與y之商

舉例:10/3結(jié)果是3.3333333333333335x//y整數(shù)除,x與y之整數(shù)商

舉例:10//3結(jié)果是3x%y余數(shù),模運(yùn)算

舉例:10%3結(jié)果是1x**y冪運(yùn)算,x的y次冪,xy+xx本身-yy的負(fù)值02Python基礎(chǔ)知識(shí)字符串類型字符串的切片和索引字符串字符串字符串由一對(duì)單引號(hào)或一對(duì)雙引號(hào)表示由0個(gè)或多個(gè)字符組成的有序字符序列"請(qǐng)輸入一個(gè)數(shù)字"、'Hello'、'1053.95kg'字符串是字符的有序序列,可以對(duì)其中的字符進(jìn)行索引示例hello

正向遞增序號(hào)字符串的序號(hào)-5

-4

-3

-2-1

01

234反向遞減序號(hào)字符串的序號(hào)<字符串>[M]索引:返回字符串中單個(gè)字符示例>>>s='hello'>>>s[1]'e'

>>>s[-1]'o'形式:字符串的序號(hào)<字符串>[M:N]切片:返回字符串中一段字符子串表示字符串s中的第3位到第5位的寫法注意:不包含序號(hào)為N的字符示例形式:>>>s='hello'>>>s[2:5]'llo'

>>>s[:]

'hello’>>>s[:-1]'hell'

★★★M省略表示從第一字符開始N省略表示到最后一個(gè)字符為止N不省略時(shí),到N-1位為止N為-1時(shí),作用是去掉最后一位從輸入的手機(jī)號(hào)中取出前三位和后四位并輸出。運(yùn)行結(jié)果:/p>

前三位:130

后四位:5678例2.202Python基礎(chǔ)知識(shí)字符串的操作符字符串的處理函數(shù)字符串操作運(yùn)算操作符及使用描

述x+y連接兩個(gè)字符串x和y舉例:“python”+“world”,結(jié)果為"pythonworld"n

*

x或x*n復(fù)制n次字符串x舉例:“AI”*3,結(jié)果為"AIAIAI"xins如果x是s的子串,返回True,否則返回False舉例:"python"in"pythonworld",結(jié)果為True

"pytld"in"pythonworld",結(jié)果為False字符串處理函數(shù)函數(shù)及使用描

述len(x)返回字符串x的長度舉例:len("AI人工智能")

結(jié)果為

6str(x)返回任意類型x所對(duì)應(yīng)的字符串形式舉例:str(3.14)結(jié)果為"3.14"

str([1,2])結(jié)果為"[1,2]"hex(x)或

oct(x)返回整數(shù)x的十六進(jìn)制或八進(jìn)制小寫形式字符串舉例:hex(425)結(jié)果為"0x1a9"

,,

oct(425)結(jié)果為"0o651"字符串處理函數(shù)函數(shù)及使用描

述chr(x)x為Unicode編碼,返回其對(duì)應(yīng)的字符舉例:chr(97)結(jié)果是'a'ord(x)x為字符,返回其對(duì)應(yīng)的Unicode編碼舉例:ord('a')結(jié)果是97Unicode編碼單字符chr(u)ord(x)字符串處理方法方法及使用描

述str.lower()或str.upper()返回字符串的副本,全部字符小寫/大寫舉例:"AbCdEfGh".lower()結(jié)果為"abcdefgh"str.split(sep=None)返回一個(gè)列表,由str根據(jù)sep被分隔的部分組成舉例:"A,B,C".split(",")結(jié)果為['A','B','C']str.count(sub)返回子串sub在str中出現(xiàn)的次數(shù)舉例:"anappleaday".count("a")結(jié)果為4str.replace(old,new)返回字符串str副本,所有old子串被替換為new舉例:"book".replace("b","c")結(jié)果為"cook"字符串處理方法方法及使用描

述str.center(width[,fillchar])字符串str根據(jù)寬度width居中,fillchar可選舉例:"python".center(10,"=")結(jié)果為

'==python=='str.strip(chars)從str中去掉在其左側(cè)和右側(cè)chars中列出的字符舉例:"=python=".strip("=")結(jié)果為

"python"str.join(iter)在iter變量除最后元素外每個(gè)元素后增加一個(gè)str舉例:",".join("12345")結(jié)果為

"1,2,3,4,5"從輸入的手機(jī)號(hào)中的中間4位(第4~7位)替換為“****”。運(yùn)行結(jié)果:oldnew:130****5678例2.302Python基礎(chǔ)知識(shí)字符串的格式化字符串的格式化<模板字符串>.format(<逗號(hào)分隔的參數(shù)>)格式化format方法{}表示槽,后續(xù)變量填充到槽中{:.2f}表示將變量ConStr填充到此處,取小數(shù)點(diǎn)后2位>>>"{0:&^20}".format("PYTHON")'&&&&&&&PYTHON&&&&&&&'>>>"{0:,.3f}和{0:,.1f}".format(12345.6789)'12,345.679和12,345.7'format槽內(nèi)部對(duì)格式化的配置方式字符串的格式化引導(dǎo)符號(hào)^

居中對(duì)齊<左對(duì)齊>右對(duì)齊浮點(diǎn)數(shù)小數(shù)精度或字符串最大輸出長度整數(shù)類型b,c,d,o,x,X浮點(diǎn)數(shù)類型e,E,f,%:<.精度><類型>>>>"{:,.3f}".format(12345.6789)'12,345.679'<對(duì)齊><填充>填充的單個(gè)字符<寬度><,>設(shè)定的寬度數(shù)字的千位分隔符{

<參數(shù)序號(hào)>:<格式控制標(biāo)記>}>>>"{0:,.3f}和{1}".format(12.6789,9.8)'12.679和9.8'03Python控制結(jié)構(gòu)基本控制結(jié)構(gòu)、分支結(jié)構(gòu)三種基本控制結(jié)構(gòu)基本控制結(jié)構(gòu)條件?是選擇A選擇B否條件?是語句塊否第1步驟第2步驟順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)單分支結(jié)構(gòu)分支結(jié)構(gòu)二分支結(jié)構(gòu)多分支結(jié)構(gòu)根據(jù)判斷條件結(jié)果而選擇是否執(zhí)行語句塊單分支結(jié)構(gòu)if

<條件>

:<語句塊>條件

?True語句塊False運(yùn)行結(jié)果: 88

是偶數(shù)例2.4根據(jù)判斷條件結(jié)果而選擇不同向前路徑的運(yùn)行方式二分支結(jié)構(gòu)if

<條件>

:<語句塊1>else

:<語句塊2>條件?是語句塊1語句塊2否例2.5緊湊形式:適用于簡單表達(dá)式的二分支結(jié)構(gòu)二分支結(jié)構(gòu)<表達(dá)式1>

if<條件>

else<表達(dá)式2>num

=

eval(input())print("是{}".format("偶數(shù)"

if

num%2==0

else

"奇數(shù)"))例2.6多分支結(jié)構(gòu)if <條件1>

:<語句塊1>elif

<條件2>

:<語句塊2>……else

:<語句塊N>條件1

?True語句塊NFalseFalseFalse……條件N-1

?語句塊N-1語句塊103Python控制結(jié)構(gòu)分支結(jié)構(gòu)的應(yīng)用多分支結(jié)構(gòu)輸入的成績屬于級(jí)別D當(dāng)輸入成績?yōu)?5,輸出結(jié)果是?對(duì)不同分?jǐn)?shù)進(jìn)行分級(jí):100≥分?jǐn)?shù)≥90輸出等級(jí)A,90>分?jǐn)?shù)≥80輸出等級(jí)B80>分?jǐn)?shù)≥70輸出等級(jí)C,70>分?jǐn)?shù)≥60輸出等級(jí)D例2.7多分支結(jié)構(gòu)當(dāng)輸入成績?yōu)?5,輸出的級(jí)別為A對(duì)不同分?jǐn)?shù)進(jìn)行分級(jí):100≥分?jǐn)?shù)≥90輸出等級(jí)A,90>分?jǐn)?shù)≥80輸出等級(jí)B80>分?jǐn)?shù)≥70輸出等級(jí)C,70>分?jǐn)?shù)≥60輸出等級(jí)D例2.7注意多條件之間的包含關(guān)系03Python控制結(jié)構(gòu)條件判斷條件判斷操作符數(shù)學(xué)符號(hào)描

述<<小于<=≤小于等于>=≥大于等于>>大于===等于!=≠不等于條件組合操作符及使用描

述xand

y兩個(gè)條件x和y的邏輯與舉例:>>>y=7>>>y>5andy<8Truexor

y兩個(gè)條件x和y的邏輯或舉例:>>>y=1

>>>y>5ory<-5Falsenot

x條件x的邏輯非舉例:noty>503Python控制結(jié)構(gòu)循環(huán)結(jié)構(gòu)遍歷循環(huán)遍歷循環(huán)循環(huán)結(jié)構(gòu)無限循環(huán)循環(huán)控制保留字循環(huán)的高級(jí)用法計(jì)數(shù)循環(huán)字符串遍歷循環(huán)列表遍歷循環(huán)文件遍歷循環(huán)遍歷循環(huán)for <循環(huán)變量>

in

<遍歷結(jié)構(gòu)>:<語句塊>功能:從遍歷結(jié)構(gòu)中逐一提取元素,放在循環(huán)變量中遍歷循環(huán)每次循環(huán),所獲得元素放入循環(huán)變量,并執(zhí)行一次語句塊由保留字for和in組成,完整遍歷所有元素后結(jié)束遍歷循環(huán)的應(yīng)用計(jì)數(shù)循環(huán)for

i

in

range(start,stop[,step]):

<語句塊>start:計(jì)數(shù)從start開始。默認(rèn)是從

0開始。

stop:計(jì)數(shù)到stop結(jié)束,但不包括stop。step:步長,默認(rèn)為1。功能:遍歷由range()函數(shù)產(chǎn)生的數(shù)字序列,產(chǎn)生循環(huán)遍歷循環(huán)的應(yīng)用計(jì)數(shù)循環(huán)>>>fori

in

range(6):

print(i)

012345>>>fori

in

range(1,6):

print(i)

12345>>>fori

in

range(1,10,2):

print(i)

13579運(yùn)行結(jié)果:運(yùn)行結(jié)果:運(yùn)行結(jié)果:使用計(jì)數(shù)遍歷,求1+1/2+…+1/n的值,結(jié)果保留2位小數(shù),n從鍵盤輸入。運(yùn)行結(jié)果:

輸入:5

輸出:2.28遍歷循環(huán)的應(yīng)用例2.1003Python控制結(jié)構(gòu)字符串遍歷循環(huán)字符串遍歷循環(huán)字符串遍歷循環(huán)for

c

in

s:<語句塊>s是字符串,遍歷字符串每個(gè)字符,產(chǎn)生循環(huán)遍歷循環(huán)的應(yīng)用forcin

"Python實(shí)踐":

print(c,

end=",")運(yùn)行結(jié)果:

P,y,t,h,o,n,實(shí),踐,例2.11遍歷字符串"Python實(shí)踐"中的每個(gè)字符,在每個(gè)字符后加逗號(hào)輸出。03Python控制結(jié)構(gòu)無限循環(huán)無限循環(huán)由條件控制的循環(huán)運(yùn)行方式反復(fù)執(zhí)行語句塊,直到條件不滿足時(shí)結(jié)束while

<條件>

:<語句塊>無限循環(huán)例2.12運(yùn)行結(jié)果:

2 1 0輸出小于3的非負(fù)整數(shù)。03Python控制結(jié)構(gòu)循環(huán)控制保留字循環(huán)控制保留字breakcontinuebreak跳出并結(jié)束當(dāng)前循環(huán),執(zhí)行循環(huán)后的語句循環(huán)控制保留字注意:break和continue只能在for或while循環(huán)中使用continue結(jié)束當(dāng)次循環(huán),繼續(xù)執(zhí)行后續(xù)次數(shù)循環(huán)循環(huán)控制保留字例2.13運(yùn)行結(jié)果:helloworld依次輸出字符串"hello,world"中","之外的字符。continue結(jié)束當(dāng)次循環(huán),繼續(xù)執(zhí)行后續(xù)次數(shù)循環(huán)循環(huán)控制保留字例2.14運(yùn)行結(jié)果:hello依次輸出字符串“hello,world”中“,”之前的字符。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論