《Python編程基礎(chǔ)(項目式微課版)》全套教學(xué)課件_第1頁
《Python編程基礎(chǔ)(項目式微課版)》全套教學(xué)課件_第2頁
《Python編程基礎(chǔ)(項目式微課版)》全套教學(xué)課件_第3頁
《Python編程基礎(chǔ)(項目式微課版)》全套教學(xué)課件_第4頁
《Python編程基礎(chǔ)(項目式微課版)》全套教學(xué)課件_第5頁
已閱讀5頁,還剩856頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

了解Python全套可編輯PPT課件Python是什么跨平臺的計算機程序設(shè)計語言面向?qū)ο蟮膭討B(tài)類型語言編寫自動化腳本(shell)獨立的、大型項目的開發(fā)Python可以做什么數(shù)學(xué)計算單機應(yīng)用程序Web后端應(yīng)用解釋器批處理任務(wù)爬蟲任務(wù)膠水語言Python語言的優(yōu)點簡單易懂01020304龐大的標準庫代碼開源易移植容易閱讀、傳播和二次開發(fā)Python語言的缺點1執(zhí)行速度較慢2不支持多個線程同時運行謝謝Python發(fā)展歷史Python的起源Python的版本更迭1991.1第一個Python編譯器誕生。擁有編程語言的良好基因。Python1.0發(fā)布1994.12000Python2.0發(fā)布包含許多新功能;開發(fā)升級更透明;轉(zhuǎn)向社區(qū)開發(fā)。Python3.0發(fā)布;不再兼容2.x代碼。2008Python2.7發(fā)布;最后一個2.x版本。2010Python2停止升級維護2020.1謝謝Python環(huán)境搭建Python環(huán)境解釋器庫Python環(huán)境包Window下搭建Python執(zhí)行環(huán)境Linux下搭建Python執(zhí)行環(huán)境1.JP1、JP2的含義,2.JP1和JP2撥到左邊和右邊的意義;3.設(shè)置AP模式的方法和指令邏輯。搭建Python執(zhí)行環(huán)境1Windows下搭建Python執(zhí)行環(huán)境2Linux下搭建Python執(zhí)行環(huán)境Windows下搭建Python執(zhí)行環(huán)境登錄Python官網(wǎng),搜索Python環(huán)境安裝程序Windows下搭建Python執(zhí)行環(huán)境下載可執(zhí)行程序的安裝包Windows下搭建Python執(zhí)行環(huán)境安裝程序Windows下搭建Python執(zhí)行環(huán)境安裝程序Windows下搭建Python執(zhí)行環(huán)境安裝程序Windows下搭建Python執(zhí)行環(huán)境安裝程序謝謝Linux下搭建Python執(zhí)行環(huán)境1.JP1、JP2的含義,2.JP1和JP2撥到左邊和右邊的意義;3.設(shè)置AP模式的方法和指令邏輯。Linux下搭建Python執(zhí)行環(huán)境1通過源碼編譯安裝2通過系統(tǒng)的軟件管理工具直接下載Linux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝下載Python源碼[root@localhost~]#wgethttps:///ftp/python/3.7.0/Python-3.7.0.tgzLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝解壓壓縮包[root@localhost~]#tar-xzfPython-3.7.0.tgzLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝生成Makefile文件[root@localhost~]#./configureLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝執(zhí)行make命令進行編譯[root@localhost~]#makeLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝執(zhí)行makeinstall命令安裝軟件[root@localhost~]#makeinstallLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝展示Python執(zhí)行器[root@localhostbin]#ls|greppythonLinux下搭建Python執(zhí)行環(huán)境——通過源碼編譯安裝卸載軟件[root@localhost~]#makeuninstall1.JP1、JP2的含義,2.JP1和JP2撥到左邊和右邊的意義;3.設(shè)置AP模式的方法和指令邏輯。Linux下搭建Python執(zhí)行環(huán)境1通過源碼編譯安裝2通過系統(tǒng)的軟件管理工具直接下載Linux下搭建Python執(zhí)行環(huán)境——直接下載通過系統(tǒng)的軟件管理工具直接下載[root@localhost~]#yuminstallPython3-y謝謝IDLEPython常用開發(fā)環(huán)境和開發(fā)工具IDLE01020304JupyterNotebookPycharmAnacondaIDLEIntegratedDevelopmetandlearningEnviromentPython自帶的集成開發(fā)工具Python安裝的可選部分使用Python和TkinterGUI工具包編寫代碼編輯、解釋執(zhí)行、代碼跟蹤測試IDLE安裝IDLE啟動IDLE的使用模式1交互模式(默認)2編輯模式交互模式編輯模式編輯模式編輯模式編輯模式編輯模式謝謝AnacondaAnacondaPython的基本環(huán)境和內(nèi)置庫常用的第三方包Numpy、Scipy、MatplotlibJupyterNotebook、SpyderAnaconda下載1官網(wǎng)下載https:///download2清華鏡像站下載https:///anaconda/archive/Anaconda安裝Anaconda安裝Anaconda安裝Anaconda安裝JupyterNotebookJupyterNotebook交互式Python語言編寫解析工具網(wǎng)頁應(yīng)用,運行于瀏覽器中直接在網(wǎng)頁中編寫和運行代碼保存為后綴為.ipynb文件JupyterNotebook謝謝PyCharmPycharm提高Python開發(fā)效率調(diào)試、語法高亮、項目管理、代碼跳轉(zhuǎn)智能提示、自動完成、單元測試高級功能PycharmPycharm下載官網(wǎng)下載https:///en-us/pycharm/download/?section=windowsPyCharm安裝PyCharm安裝PyCharm安裝PyCharm安裝PyCharm謝謝Python語法特點Python語法特點行和縮進空行注釋Python語法特點文件編碼聲明注釋標識符行和縮進行物理行邏輯行物理行源碼中換行符分割的每一行代碼,是一個物理行邏輯行Python解釋器對代碼進行解釋,一個語句是一個邏輯行行和縮進C語言用{}區(qū)分代碼塊Python用縮進和“:”區(qū)分縮進是指每一行開始前的空白區(qū)域不需要縮進的代碼頂行編寫,不留空白縮進用TAB鍵或空格實現(xiàn),但二者不能混用縮進行和縮進縮進不符合規(guī)則,解析器會報縮進錯誤,程序無法運行縮進的位置不同,程序執(zhí)行效果可能會產(chǎn)生差異空行函數(shù)之間或類的方法之間用空行分隔,表示一段新代碼的開始類和函數(shù)入口之間用一行空行分隔,以突出類和函數(shù)入口的開始空行并不是python語法的一部分注釋單行注釋:#多行注釋:三個單引號'''、三個雙引號"""。說明多行代碼的功能時,一般將注釋放在代碼的上一行說明單行代碼的功能時,一般將注釋放在代碼的右側(cè)注釋的注意事項Python多行注釋不支持嵌套當注釋符作為字符串的一部分出現(xiàn)時,就不能再將它們視為注釋標記文件編碼聲明注釋在Python3中,默認采用UTF-8編碼。一般不用寫文件編碼聲明注釋如果不想使用默認編碼,需要在文件第一行聲明文件編碼,也就是文件編碼聲明注釋語法格式:#-*-coding:編碼-*-或者#coding=編碼舉例:#-*-coding:gbk-*-或者#coding=gbk標識符標識符是程序中某一元素(變量、關(guān)鍵字、函數(shù)、類、模塊、對象)的名字。標識符由字母(A-Z,a-z)、數(shù)字(0-9)、以及下劃線(_)組成。標識符的命名規(guī)則規(guī)則1:第一個字符必須是字母(A~Z和a~z)或下劃線(_),不能是數(shù)字規(guī)則2:標識符的其它部分由字母(A~Z和a~z)、或數(shù)字(0~9)、或下劃線(_)組成規(guī)則4:標識符對大小寫敏感Hello、apple、_max、_minApple10、Apple_10、V_3_V、CON2_5、_Test_3規(guī)則3:Python的標識符中,不能包含空格、@、%、$等特殊字符。以下標識符是錯誤的:program@、Test%a、My$等A和a、Apple和apple、Sum_和sum_都是不同的標識符。標識符的命名規(guī)則規(guī)則5:標識符不能和Python中的保留字和關(guān)鍵字相同。規(guī)則6:以下劃線開頭的標識符有特殊含義1.以單下劃線開頭的標識符(如_width),表示不能直接訪問類屬性,其無法通過from...import*方式導(dǎo)入2.以雙下劃線開頭的標識符(如__add)表示類的私有成員FalseNoneTrueandasassertbreakclasscontinuedefdelelifelseexceptfinallyforfromglobalifimportinislambdanonlocalnotorpassraisereturntrywhilewithyield3.以雙下劃線作為開頭和結(jié)尾的標識符(如__init__)是專用標識符標識符的命名規(guī)則規(guī)則7:不同場景中的標識符,其名稱也有一定的規(guī)范可循1.當標識符用作模塊名時,應(yīng)盡量短小,并且全部使用小寫字母,可以使用下劃線分割多個字母。

例如:game_main、game_register等2.當標識符用作包的名稱時,應(yīng)盡量短小,應(yīng)全部使用小寫字母,不推薦使用下劃線。

例如:com.mr、com.mr.book等3.當標識符用作類名時,應(yīng)采用單詞首字母大寫的形式。例如:定義一個圖書類,可以命名為Book4.函數(shù)名、類中的屬性名和方法名,應(yīng)全部使用小寫字母,多個單詞之間可以用下劃線分割。5.常量命名應(yīng)全部使用大寫字母,單詞之間可以用下劃線分割。謝謝Python編程規(guī)范Python編程規(guī)范編程規(guī)范通用約定PEP8通用約定變量的命名函數(shù)的命名注釋格式Python編程規(guī)范類的命名空格定義PEP8PEP81.使用空格來表示縮進,不要用TAB(制表符)表示。2.和語法相關(guān)的每一層縮進都用4個空格來表示。4.采用ASCII或UTF-8編碼文件。3.每行的字符數(shù)不應(yīng)超過79。5.對于占據(jù)多行的長表達式來說,除了首行之外,其余各行都應(yīng)該在通常的縮進級別上再加4個空格。6.文件中的函數(shù)與類之間應(yīng)該用兩個空行隔開。PEP87.在同一個類中,各方法之間應(yīng)該用一個空行隔開。8.不要在行尾加分號,也不要用分號將兩條命令放在同一行。PEP810.為變量賦值時,賦值符號的左側(cè)和右側(cè)均應(yīng)寫上一個空格。9.在使用下標來獲取列表元素、調(diào)用函數(shù)或給關(guān)鍵字參數(shù)賦值時,不要在兩旁添加空格。11.函數(shù)、變量及屬性應(yīng)該用小寫字母來拼寫,各單詞之間用下劃線相連,例如lowercase_underscore。謝謝Python基本輸入輸出函數(shù)Python基本輸入輸出函數(shù)inputprintinputinput函數(shù)從控制臺獲取用戶的一行輸入,返回字符串類型。注意:提示性文字是可選的,提示對輸入內(nèi)容無影響。<變量>=input(<提示性文字>)print1輸出字符串2輸出一個或多個變量3混合輸出字符串和變量值print輸出字符串print(<待輸出字符串>)print輸出一個或多個變量print(<變量1>,...,<變量n>)print混合輸出字符串與變量值print(<輸出字符串模板>.format(<變量1>,<變量2>,...,<變量n>)print修改end參數(shù)print(<待輸出內(nèi)容>,end="<增加的輸出結(jié)尾>")謝謝運算符運算符算術(shù)運算符關(guān)系運算符邏輯運算符Python運算符賦值運算符位運算符成員運算符身份運算符算術(shù)運算符算術(shù)運算符描述+加:兩個對象相加-減:得到負數(shù)或者一個數(shù)減去另一個數(shù)*乘:兩個數(shù)相乘或返回一個重復(fù)若干次的字符串/除:x除以y%取模:返回除數(shù)的余數(shù)**冪:返回x的y次冪//取整除:返回商的整數(shù)部分(向下取整)算術(shù)運算符關(guān)系運算符關(guān)系運算符描述==等于:比較對象是否相等!=不等于:比較兩個對象是否不相等>大于:返回x是否大于y<小于:返回x是否小于y>=大于等于:返回x是否大于等于y<=小于等于:返回x是否小于等于y關(guān)系運算符賦值運算符賦值運算符描述實例=簡單的賦值運算符c=a+b將a+b的運算結(jié)果賦值為c+=加法賦值運算符c+=a等效于c=c+a-=減法賦值運算符c-=a等效于c=c–a*=乘法賦值運算符c*=a等效于c=c*a/=除法賦值運算符c/=a等效于c=c/a%=取模賦值運算符c%=a等效于c=c%a**=冪賦值運算符c**=a等效于c=c**a//=取整除賦值運算符c//=a等效于c=c//a位運算符位運算符用來對二進制位進行操作,操作數(shù)只能為整型和字符型數(shù)據(jù)位運算符描述&按位與運算符:參與運算的兩個值,如果兩個相應(yīng)位都為1,則該位的結(jié)果為1,否則為0。|按位或運算符:只要對應(yīng)的二個二進制位有一個為1時,結(jié)果位就為1。^按位異或運算符:當兩對應(yīng)的二進制位相異時,結(jié)果為1。~按位取反運算符:對數(shù)據(jù)的每個二進制位取反,即把1變?yōu)?,把0變?yōu)?。~x類似于-x-1。<<左移動運算符:運算數(shù)的各二進制位全部左移若干位,由<<右邊的數(shù)字指定移動的位數(shù),高位丟棄,低位補0。>>右移動運算符:把>>左邊的運算數(shù)的各二進制位全部右移若干位,>>右邊的數(shù)字指定移動的位數(shù)。位運算符a=0b10100b=0b11110c=0b10100d=0b01010000邏輯運算符1.操作bool類型表達式,返回布爾值True或False。2.操作其他類型的表達式,返回一個指定操作數(shù)的值。邏輯運算符邏輯表達式描述andxandy布爾“與”:如果x為False,xandy返回False;否則返回y的計算值。orxory布爾“或”:如果x是非0,xory返回x的計算值;否則返回y的計算值。notnotx布爾“非”:如果x為True,返回False;如果x為False,則返回True。邏輯運算符位運算符邏輯運算符成員運算符成員運算符是用來識別某一元素是否包含在變量中,這個變量可以是字符串、列表、元組。成員運算符描述實例in如果在指定的序列中找到值,則返回True;否則返回False。xinstr,返回True。notin如果在指定的序列中沒有找到值,則返回True;否則返回False。ynotinstr,返回True。成員運算符身份運算符身份運算符是判斷兩個對象的存儲單元是否相同的一種運算符號,返回的結(jié)果是True或者False。成員運算符描述實例isis是判斷兩個標識符是否引用自一個對象。xisy,類似id(x)==id(y)(id()函數(shù)用于獲取對象內(nèi)存地址)。如果引用的是同一個對象,則返回True,否則返回False。isnotisnot是判斷兩個標識符是否引用自不同對象。xisnoty,類似id(x)!=id(y)。如果引用的不是同一個對象,則返回True,否則返回False。身份運算符謝謝安裝JupyterNotebook實訓(xùn)JupyterNotebook1在網(wǎng)頁中編寫和運行代碼2在同一個網(wǎng)頁中編寫說明文檔3支持語法高亮、縮進、補充功能等安裝JupyterNotebookAnaconda安裝單獨安裝Windows下單獨安裝Windows下單獨安裝Windows下單獨安裝MacOS下安裝MacOS下安裝MacOS下啟動謝謝打印古詩實訓(xùn)中國古典詩詞古詩的python程序輸出結(jié)果謝謝換算學(xué)習(xí)時間實訓(xùn)換算學(xué)習(xí)時間題目假設(shè)四位學(xué)生今天的學(xué)習(xí)時間分別為15678秒、8888秒、25888秒、32888秒。編程計算他們的學(xué)習(xí)時間分別是多少?時,多少分鐘,多少秒;以‘XX時XX分XX秒’的?式表示出來。例如,100秒表示成:

0時1分40秒。1分鐘=60秒1小時=60分鐘=3600秒小時數(shù)=總秒數(shù)//3600分鐘數(shù)=(總秒數(shù)%3600)//60秒數(shù)=(總秒數(shù)%3600)%60分析換算學(xué)習(xí)時間程序運行結(jié)果換算學(xué)習(xí)時間程序運行結(jié)果1.JP1、JP2的含義,2.JP1和JP2撥到左邊和右邊的意義;3.設(shè)置AP模式的方法和指令邏輯。小結(jié)1輸入函數(shù)input的使用方法2輸出函數(shù)print搭配format的使用方法3算術(shù)運算符的使用方法謝謝整型整型(int)最基本的數(shù)據(jù)類型一切整數(shù):正數(shù)、零、負數(shù)支持所有常見的數(shù)學(xué)運算整型的數(shù)學(xué)運算print(3+4)print(15-6)print(2*3)變量運算常量運算a=3b=4print(a+b)不同進制的表示謝謝浮點型浮點型(float)對應(yīng)數(shù)學(xué)中的小數(shù)數(shù)學(xué)中相等的兩個數(shù),在python中可能屬于不同的數(shù)據(jù)類型定義浮點型變量必須使用小數(shù)點浮點型浮點型浮點型整型m=5print(type(m))<class‘int’>n=5.0print(type(n))<class‘float’>如果操作數(shù)中有一個浮點型數(shù)據(jù),最后的計算結(jié)果就是浮點型print(3+4+5+3.14+7+8)30.14浮點數(shù)的表示方法使用類似十進制的小數(shù)形式使用科學(xué)計數(shù)法表示如:3.14、0.618、365.0等如:3.14x103、6.18x10-1、3.65x102等x=3.14e3print(x)#3140.0

y=6.18e-1print(y)#0.618

z=3.65e2print(z)#365.0浮點數(shù)的存儲小數(shù)是用二進制方式存放在內(nèi)存中,小數(shù)的二進制表示會受到機器的限制對浮點數(shù)進行判等運算a=0.1b=0.2print(a+b)a=0.1b=0.2c=0.3print(a+b==c)0.30000000000000004TrueFalsea=0.1b=0.2c=0.3print(abs(a+b-c)<0.000001)Vs謝謝布爾類型和復(fù)數(shù)類型布爾型(bool)代表真(True)與假(False)與(and)、或(or)、非(not)三種運算布爾值的運算規(guī)則a=Trueb=Falseprint(aanda)print(aora)print(nota)print(bandb)print(borb)print(notb)print(aandb)print(aorb)TrueFalse復(fù)數(shù)類型(complex)a+bjreal:實部imag:虛部復(fù)數(shù)類型案例x=12-3.14Jprint(‘實部是:’,x.real)print(‘虛部是:’,x.imag)謝謝字符串序列數(shù)據(jù)類型字符串集合元組序列數(shù)據(jù)類型列表字典字符串用英文引號標識的一串字符四種引號:單引號、雙引號、三重單引號、三重雙引號a='HelloWorld'b="HelloWorld"c='''HelloWorld'''d="""HelloWorld"""字符串案例a='HelloWorld'b="HelloWorld"c='''HelloWorld'''d="""HelloWorld"""普通字符串允許包含多行的特殊字符串print(id(a))print(id(b))print(id(c))print(id(d))字符串的訪問方法使用方括號[]來截取字符串索引值以0為開始值,-1為從末尾的開始位置變量[頭下標:尾下標]var1='HelloWorld!'var2="Runfast"print("var1[0]:",var1[0])print("var2[1:5]:",var2[1:5])謝謝集合集合(set)無序的不重復(fù)元素序列使用{}或者set()函數(shù)創(chuàng)建集合創(chuàng)建空集合必須用set(),不能用{}集合{}用來創(chuàng)建空字典value={value_1,value_2,...}或者set(value)集合去重basket

=

{'apple','orange',

'apple',

'pear',

'orange',

'banana'}

print(basket)快速判斷元素是否在集合內(nèi)print('orange'inbasket)print('crabgrass'inbasket)TrueFalse集合a

=

set('abracadabra')

print(a)集合a中包含但集合b中不包含的元素print(a-b)b

=

set('alacazam')

print(b)

{'b',

‘d',

‘r'}集合a或b中包含的所有元素print(a|b)

{'a',

'r',

'b',

'c',

'd'}

{'a','l','z','m',

'c'}

{'a',

'r',

'b',

'c','d','l','z','m'}集合a

=

set('abracadabra')

print(a)集合a、b中都包含的元素print(a&b)b

=

set('alacazam')

print(b)

{'a',

'r',

'b',

'c',

'd'}

{'a','l','z','m',

'c'}

{'a',

'c'}不同時包含于a、b的元素print(a^b)

{'r',

'b','d','l','z','m'}謝謝列表列表(list)用[]表示列表中的元素可以具有不同的數(shù)據(jù)類型列表可以通過序號對列表中的元素進行訪問lst=["Tom","17050120",18,3.14,"Jiangsu"]列表的基本操作定義一個列表lst=["China","Russia","USA","English"]增加元素lst.append("France")print(lst)["China","Russia","USA","English","France"]刪除某個特定元素lst.remove("USA")print(lst)["China","Russia","English","France"]列表的基本操作在一個給定的位置插入一個元素lst.insert(3,"USA")print(lst)["China","Russia","English",

"USA",

"France"]["China","Russia","English","France"]判斷元素的位置lst.index(“English")2排序lst.sort()print(lst)["China",

"English","France","Russia","USA"]列表的靈活使用定義一個包含不同數(shù)據(jù)類型的列表new_lst=["Tom","17050120",18,"Boy"

,"Jiangsu"]print(new_lst[2])18反向索引print(new_lst[-3])18切片操作print(new_lst[0:3])print(new_lst[3:])['Tom','17050120',18]

['Boy','Jiangsu']列表的序列方法lst=[1,4,3,6,9,0,2]獲取序列長度print(len(lst))7獲取序列中的最大值print(max(lst))9獲取序列中的最小值print(min(lst))0列表的序列方法lst=[1,4,3,6,9,0,2]對序列升序排列l(wèi)st=sorted(lst)print(lst)

[0,1,2,3,4,6,9]對序列降序排列l(wèi)st=sorted(lst,reverse=True)print(lst)[9,6,4,3,2,1,0]對序列值求和print(sum(lst))25謝謝元組元組(tuple)可以通過序號訪問元素元組使用()元組元組的元素不可更改,長度不可以改變列表使用[]列表的元素可以更改,長度可以改變元組和列表在其它方面類似元組的不可更改特性長度不可更改country_lst=("China","Russia","USA","English","France")country_lst.append("Japan")內(nèi)容不可更改country_lst[2]="India"元組在函數(shù)參數(shù)中的使用定義一個函數(shù)funcdeffunc(countries):print(type(countries))forcountryincountries:print(country)定義一個元組,并調(diào)用函數(shù)funccountry_lst=("China","Russia","USA","English","France")func(country_lst)元組只有一個元素的情況元組a=(3.14,)print(type(a))<class'tuple'>普通數(shù)據(jù)類型a=(3.14)print(type(a))<class'float'>元素使用逗號時,對象的類型是元組;元素不使用逗號時,對象的類型是普通數(shù)據(jù)類型。謝謝字典字典(dict)使用{}表示內(nèi)部元素由鍵值對表示鍵代表數(shù)據(jù)的實際意義,值代表數(shù)據(jù)本身一個字典對象可以存儲0個到多個鍵值對鍵值對中的值可以是另一個字典dict_stu={"name":"Rose","sex":"girl","age":20,"score":{"math":90,"english":88}}字典對象的常用操作定義兩個字典dict_stu1={"name":"Jack","sex":"boy","age":20}dict_stu2={"name":"Rose","sex":"girl","age":20,"score":{"math":90,"english":88}}通過鍵直接訪問字典中的某一項數(shù)據(jù)print(dict_stu1['age'])print(dict_stu2['score'])20{'math':90,'english':88}直接給字典增加一項新的數(shù)據(jù)dict_stu1['score']={"math":92,"english":98}print(dict_stu1)

{'name':'Jack','sex':'boy','age':20,'score':{'math':92,'english':98}}字典對象的常用操作dict_stu2={"name":"Rose","sex":"girl","age":20,"score":{"math":90,"english":88}}刪除字典中某個指定的數(shù)據(jù)deldict_stu2['age']print(dict_stu2){"name":"Rose","sex":"girl","score":{"math":90,"english":88}}刪除字典中某個指定的元素并返回對應(yīng)的值print(dict_stu2.pop('sex'))girlprint(dict_stu2){"name":"Rose","score":{"math":90,"english":88}}字典對象的常用操作dict_stu2={"name":"Rose","score":{"math":90,"english":88}}判斷一項數(shù)據(jù)是否在字典中print('name'indict_stu2)清空字典中所有數(shù)據(jù)dict_stu1.clear()print(dict_stu1)Trueprint('sex'indict_stu2)False{}謝謝計算三角形面積實訓(xùn)題目和思路輸入三角形的三條邊長使用三角形面積公式計算面積輸出三角形面積使用直角三角形判斷公式判斷三角形是否為直角三角形輸出判斷結(jié)果已知三條邊長,計算三角形的面積,判斷該三角形是否是直角三角形。題目和思路輸入三角形的三條邊長使用三角形面積公式計算面積輸出三角形面積使用直角三角形判斷公式判斷三角形是否為直角三角形輸出判斷結(jié)果inputs=(a+b+c)/2

area=(s*(s-a)*(s-b)*(s-c))**0.5printa2+b2=c2或a2+c2=b2或b2+c2=a2print程序?qū)崿F(xiàn)輸入三角形的三條邊長使用三角形面積公式計算面積輸出三角形面積使用直角三角形判斷公式判斷三角形是否為直角三角形輸出判斷結(jié)果a=int(input("1.請輸入第一條邊長:"))

b=int(input("1.請輸入第二條邊長:"))

c=int(input("1.請輸入第三條邊長:"))s=(a+b+c)/2

area=(s*(s-a)*(s-b)*(s-c))**0.5print("1.三角形的面積為:",area)is_right_triangle=a**2+b**2==c**2ora**2+c**2==b**2orb**2+c**2==a**2print(is_right_triangle)程序運行結(jié)果程序?qū)崿F(xiàn)輸入三角形的三條邊長使用三角形面積公式計算面積輸出三角形面積使用直角三角形判斷公式判斷三角形是否為直角三角形輸出判斷結(jié)果a=int(input(“2.請輸入第一條邊長:"))

b=int(input(“2.請輸入第二條邊長:"))

c=int(input(“2.請輸入第三條邊長:"))s=(a+b+c)/2

area=(s*(s-a)*(s-b)*(s-c))**0.5print(“2.三角形的面積為:",area)is_right_triangle=a**2+b**2==c**2ora**2+c**2==b**2orb**2+c**2==a**2print(is_right_triangle)程序運行結(jié)果謝謝模擬水果店的電子菜單實訓(xùn)電子點單題目和思路創(chuàng)建一個水果列表對列表中的元素進行增加、修改、刪除等,輸出列表的長度將所有項用一個字符串連接起來,中間用逗號隔開,每個單詞首字母大寫。創(chuàng)建集合,將列表中的元素放到集合中,輸出集合及長度創(chuàng)建元組,將列表中的元素放到元組中,輸出元組及長度簡單模擬水果店的電子菜單,對菜單做出相應(yīng)的修改。創(chuàng)建字典,將列表中的元素按照{(diào)index:value}的形式添加到字典中程序?qū)崿F(xiàn)fruits=['apple','banana','orange','watermelon']創(chuàng)建一個水果列表對列表中的元素進行修改對列表中的元素進行刪除fruits=[xforxininput().split()]或fruits[0]='grape'

print(fruits)fruits.remove('banana')

print(fruits)['grape','banana','orange','watermelon']['grape','orange','watermelon']程序?qū)崿F(xiàn)對列表中的元素進行增加操作輸出列表的長度將所有項用一個字符串連接起來,中間用逗號隔開,每個單詞首字母大寫['grape','orange','watermelon']fruits.append('grape')

print(fruits)['grape','orange','watermelon','grape']print(len(fruits))4fruits_str=fruits[0].title()+','+fruits[1].title()+','+fruits[2].title()+','+fruits[3].title()

print(fruits_str)Grape,Orange,Watermelon,Grape程序?qū)崿F(xiàn)創(chuàng)建集合,將列表中的元素放到集合中,輸出集合及長度fruits_set=set()

fruits_set.add(fruits[0])

fruits_set.add(fruits[1])

fruits_set.add(fruits[2])

fruits_set.add(fruits[3])

print(fruits_set){'orange','watermelon','grape'}print(len(fruits_set))3['grape','orange','watermelon','grape']程序?qū)崿F(xiàn)創(chuàng)建元組,將列表中的元素放到元組中,輸出元組及長度fruits_tuple=tuple()

fruits_tuple=(fruits[0],fruits[1],fruits[2],fruits[3])

print(fruits_tuple)('grape','orange','watermelon','grape')['grape','orange','watermelon','grape']print(len(fruits_tuple))4程序?qū)崿F(xiàn)創(chuàng)建字典,將列表中的元素按照{(diào)index:value}的形式添加到字典中fruits_dict={}

fruits_dict[0]=fruits[0]

fruits_dict[1]=fruits[1]

fruits_dict[2]=fruits[2]

fruits_dict[3]=fruits[3]

print(fruits_dict){0:'grape',1:'orange',2:'watermelon',3:'grape'}['grape','orange','watermelon','grape']謝謝分支結(jié)構(gòu)分支結(jié)構(gòu)單分支雙分支分支結(jié)構(gòu)多分支單分支if語句判斷條件可以是布爾值、比較判斷條件、邏輯判斷條件等if判斷條件:

代碼段代碼段前面要有縮進,并保持一致如果判斷條件為真,則執(zhí)行代碼段如果判斷條件為假,則跳過代碼段單分支案例print('歡迎使用體溫檢測小程序')print('----------------------')temperature=eval(input('請輸入體溫:'))iftemperature>37.2:print('請到發(fā)熱門診檢查!')print('謝謝使用!')print('----------------------')if語句的使用雙分支if…else語句if判斷條件:

代碼段1else:

代碼段2如果判斷條件為真,則執(zhí)行代碼段1如果判斷條件為假,則執(zhí)行代碼段2雙分支案例print('歡迎使用體溫檢測小程序')print('----------------------')temperature=eval(input('請輸入體溫:'))iftemperature>37.2:print('請到發(fā)熱門診檢查!')else:print('體溫正常')print('謝謝使用!')print('----------------------')if…else語句的使用多分支if…elif…else語句if判斷條件1:

代碼段1elif判斷條件2:

代碼段2elif判斷條件3:

代碼段3......else:

代碼段n可以有多個elif語句else語句不是必須的多分支案例score=float(input('請輸入成績:'))

if(score<0orscore>100):print('輸入的內(nèi)容不合法')elif(score>=90):print('優(yōu)秀')elif(score>=80andscore<90):print('良好')elif(score>=70andscore<80):print('中等')elif(score>=60andscore<70):print('及格')else:print('不及格')print('謝謝使用!')謝謝for循環(huán)for循環(huán)用于數(shù)值循環(huán)和遍歷字符串、列表等序列for循環(huán)變量in對象:

循環(huán)體由關(guān)鍵字for和in組成循環(huán)變量表示每次循環(huán)所獲取的元素對象是待遍歷或迭代的對象循環(huán)體即執(zhí)行語句,可以是單個語句或代碼段for循環(huán)的用途數(shù)值循環(huán),通常將for循環(huán)和range函數(shù)搭配使用遍歷字符串用途遍歷列表for循環(huán)案例——數(shù)值循環(huán)thesum=0print('------1-數(shù)值循環(huán)------')foriinrange(1,11):thesum=thesum+iprint('1到10的累加=',thesum)for循環(huán)for循環(huán)案例——遍歷字符串print('------2-遍歷字符串------')forchrin'HelloWorld':print(chr.upper())for循環(huán)for循環(huán)案例——遍歷列表print('------3-遍歷列表------')text=['春','夏','秋','冬']foriintext:print(i)for循環(huán)謝謝while循環(huán)while循環(huán)條件循環(huán)while判斷條件:

循環(huán)體如果判斷結(jié)果為真,則繼續(xù)執(zhí)行循環(huán)如果判斷結(jié)果為假,則執(zhí)行while結(jié)構(gòu)后面的語句while循環(huán)沒有確定的循環(huán)次數(shù)while循環(huán)案例sum=0.0count=0

xStr=input('輸入一個數(shù)(空值表示結(jié)束)')whilexStr!='':x=float(xStr)sum=sum+xcount=count+1xStr=input('輸入一個數(shù)(空值表示結(jié)束)')print('共輸入了',count,'個數(shù)')print('所有數(shù)的平均值是:',sum/count)while循環(huán)while循環(huán)案例謝謝循環(huán)嵌套循環(huán)嵌套循環(huán)嵌套for循環(huán)嵌套while循環(huán)嵌套while循環(huán)和for循環(huán)相互嵌套循環(huán)嵌套案例foriinrange(1,10):forjinrange(1,i+1):print(j,'*',i,'=',j*i,'\t',end='')print('\n')外層循環(huán)控制行內(nèi)層循環(huán)控制列循環(huán)嵌套案例謝謝流程跳轉(zhuǎn)流程跳轉(zhuǎn)流程跳轉(zhuǎn)break:立即結(jié)束整個循環(huán),接著執(zhí)行循環(huán)體后面的代碼continue:結(jié)束當前這次循環(huán),接著執(zhí)行下次循環(huán)break語句n=10sum=0foriinrange(1,11):ifi==4:breakprint(i)sum=sum+iprint('所有數(shù)的和值是:',sum)使用break結(jié)束整個循環(huán)for循環(huán)continue語句n=10sum=0foriinrange(1,11):ifi==4:continueprint(i)sum=sum+iprint('所有數(shù)的和值是:',sum)使用continue結(jié)束當前循環(huán)for循環(huán)謝謝菜名查詢小程序?qū)嵱?xùn)題目和思路用戶輸入菜系根據(jù)用戶輸入,進入不同的分支采用分支嵌套,讓用戶輸入口味根據(jù)用戶輸入的口味,打印菜名菜名查詢題目和思路inputif…elif…elseinputprint用戶輸入菜系根據(jù)用戶輸入,進入不同的分支采用分支嵌套,讓用戶輸入口味根據(jù)用戶輸入的口味,打印菜名if…elif…else列表程序?qū)崿F(xiàn)用戶輸入菜系根據(jù)用戶輸入,進入不同的分支food=int(input('請輸入您選擇的菜系(川菜-1,粵菜-2,魯菜-3,淮揚菜-4):'))if(food==1):

川菜代碼塊elif(food==2):

粵菜代碼塊elif(food==3):

魯菜代碼塊elif(food==4):

淮揚菜代碼塊else:

其它菜系代碼塊程序?qū)崿F(xiàn)采用分支嵌套,讓用戶輸入口味根據(jù)用戶輸入的口味,打印菜名flavor1=int(input('請輸入您的口味(麻辣-1,魚香-2,酸辣-3):'))list_ml=['麻辣魚丁','麻婆豆腐','毛血旺','水煮魚片']list_yx=['魚香肉絲','魚香茄子','魚香蓮藕釀蝦排','魚香獅子頭','魚香平菇']list_sl=['酸辣魷魚卷','酸辣魚片','酸辣燴雞血','酸辣湯','酸辣萵筍絲']

if(flavor1==1):print('麻辣口味的川菜有:',list_ml)

elif(flavor1==2):print('魚香口味的川菜有:',list_yx)

elif(flavor1==3):print('酸辣口味的川菜有:',list_sl)

else:print('其他口味的川菜有:椒麻肚片、陳皮牛肉、辣子雞丁、怪味鴨等')完整程序運行結(jié)果謝謝聊天機器人實訓(xùn)題目和思路使用循環(huán)結(jié)構(gòu)判斷是否繼續(xù)聊天使用分支結(jié)構(gòu)判斷聊天內(nèi)容循環(huán)嵌套循環(huán)和分支的嵌套聊天機器人程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當條件為真,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當條件為假,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')

button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當條件為真,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當條件為假,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當輸入為0時,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當輸入為1時,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當輸入為0時,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當輸入為1時,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當輸入為0時,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當輸入為1時,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')程序?qū)崿F(xiàn)while(True):print('----------------歡迎來和“小器”聊天----------------')button=int(input('請輸入您的選擇(0退出1聊天):'))whilebutton<0orbutton>1:print('您輸入的內(nèi)容不合法')button=int(input('請輸入您的選擇(0退出1聊天):'))#當輸入為0時,退出循環(huán)ifbutton==0:print('---------------------謝謝使用!---------------------')break

#當輸入為1時,開始聊天print('你好,人類!')name=input('你叫什么名字呀?\n')print('哦,你好,',name)question=input()whilequestion.find('再見')==-1:ifquestion.find('幾歲')!=-1orquestion.find('多大')!=-1:print('我也不知道,可能會有幾百歲了,哈哈!')elifquestion.find('名字')!=-1:print("我叫小器,是一個機器人!")else:print('你說什么,我不懂!')question=input()print('再見,歡迎再來找我玩!')運行結(jié)果運行結(jié)果運行結(jié)果謝謝函數(shù)的概念和作用函數(shù)的概念print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")defBirthday():print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")函數(shù)的概念函數(shù)是組織好的、可重復(fù)使用的、用來實現(xiàn)單一或相關(guān)聯(lián)功能的代碼段defBirthday():print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")能提高應(yīng)用的模塊性和代碼的重復(fù)利用率print()、input()等內(nèi)置函數(shù)支持用戶自定義函數(shù)函數(shù)的作用函數(shù)的使用可以解決代碼冗余print("張三同學(xué),送你一首歌,祝你學(xué)習(xí)進步")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("李四老師,送您一首歌,祝您工作順利!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")defBirthday():print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("張三同學(xué),送你一首歌,祝你學(xué)習(xí)進步")Birthday()print(“李四老師,送你一首歌,祝您工作順利!")Birthday()函數(shù)的作用函數(shù)的封裝能夠保護內(nèi)部的數(shù)據(jù)deffunc():a=1

func()print(“外部的a=“,a)deffunc():a=1print(“內(nèi)部的a=”,a)func()函數(shù)的作用函數(shù)能夠提高程序的可讀性,使得程序模塊化cala.pynew_cala.pydefadd(a,b):returna+bdefnum(a,b):returna-bimportmathprint(math.pi)print(math.pow(2,3))print('------自定義函數(shù)導(dǎo)入------')importcalaprint(cala.add(2,8))print(cala.num(10,6))函數(shù)的作用函數(shù)能夠提高程序的可維護性和可擴展性需要修改的地方少可維護性是指當需要修改程序的某個模塊時,對其它模塊的影響和修改的代價;可擴展性是指當需要為程序添加新的功能時,對其它模塊的影響和添加的代價。通過添加部分代碼,在原有基礎(chǔ)上增加新功能謝謝函數(shù)的定義和調(diào)用函數(shù)的定義def函數(shù)名(函數(shù)參數(shù)):函數(shù)體return表達式或值defBirthday():#生日快樂歌print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")以“def”開頭,后面依次接函數(shù)名、圓括號和冒號任何傳入?yún)?shù)和自變量必須放在圓括號中間函數(shù)的第一行可用于存放函數(shù)說明函數(shù)內(nèi)容以冒號起始,并且縮進函數(shù)以return[表達式或值]結(jié)束函數(shù)的調(diào)用直接從Python提示符執(zhí)行函數(shù)>>>defBirthday():print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")print("Happybirthdaytoyou!")>>>print("張三同學(xué),送你一首歌,祝你學(xué)習(xí)進步")>>>Birthday()>>>print(“李四老師,送你一首歌,祝您工作順利!")>>>Birthday()函數(shù)的調(diào)用通過另一個函數(shù)調(diào)用執(zhí)行defmax(a,b):ifa>b:returnaelse:returnbdefthe_max(x,y,z):c=max(x,y)returnmax(c,z)print(the_max

溫馨提示

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

評論

0/150

提交評論