版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Python語言第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)1.1Python簡介Python語言目前已經(jīng)超過27歲了,它早于HTTP1.0協(xié)議5年,早于Java語言4年。Python并不是新的編程語言HiPython,Howoldareyou?第一章Python3概述1.1.1Python的前世今生1.1Python簡介Python是由荷蘭人GuidovanRossum(吉多·范·羅蘇姆)于1989年圣誕節(jié)期間在阿姆斯特丹休假時為了打發(fā)無聊的假期而編寫的一個腳本解釋程序。1991年P(guān)ython第一個發(fā)行第一個公開版本。Python語言被吉多作為是ABC語言的一種繼承,但堅決摒棄ABC語言的封閉性,走開源路線。在Python語言問世的時候,他在互聯(lián)網(wǎng)上公開了源代碼,讓世界上更多喜歡Python的程序員,對Python進(jìn)行不斷的功能完善。這也就為后來Python的蓬勃發(fā)展奠定了堅實的基礎(chǔ)。第一章Python3概述第一章Python3概述1.1Python簡介自從2004年以后,Python的使用率呈線性增長,2018年2月調(diào)查顯示Python語言在開發(fā)語言中排名第4,僅次于Java、C和C++。本書使用Python3.6.5版本,當(dāng)下官網(wǎng)已經(jīng)更新至3.7版本并增加了新特性?,F(xiàn)在Python是由一個核心開發(fā)團(tuán)隊在維護(hù),吉多仍然占據(jù)著至關(guān)重要的作用,指導(dǎo)其進(jìn)展。在全世界程序員不斷的改進(jìn)和完善下,Python現(xiàn)今已經(jīng)成為最受歡迎的程序設(shè)計語言之一。1.1.1Python的前世今生第一章Python3概述1.1.2Python的應(yīng)用場合1.1Python簡介⑤自動化運維selenium⑥WEB開發(fā)Web框架如Django,web2py等⑦科學(xué)計算NumPy,SciPy,Matplotlib⑧常規(guī)軟件開發(fā)軟件開發(fā)、腳本編寫、網(wǎng)絡(luò)編程①人工智能機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)、深度學(xué)習(xí)②云計算開源云計算解決方案OpenStack③大數(shù)據(jù)數(shù)據(jù)分析、數(shù)據(jù)可視化、數(shù)據(jù)挖掘④網(wǎng)絡(luò)爬蟲主流爬蟲設(shè)計語言,Scrapy框架目前,Python的主要應(yīng)用領(lǐng)域如下:Python應(yīng)用場合第一章Python3概述1.1.3Python的特性1.1Python簡介Python簡單易學(xué)Python語言是免費且開源的Python是面向?qū)ο蟮母邔诱Z言Python是解釋性語言Python提供了豐富的庫Python是可擴(kuò)展和可嵌入的Python運行速度快Python程序編寫需使用規(guī)范的代碼風(fēng)格Python是可移植的……..第一章Python3概述1.1.4選擇Python的版本2008年10月Python3.0版本發(fā)布,該版本在Python2的上進(jìn)行了很大的改變,使得兩者互不兼容。我們該如何選擇Python的版本呢?由于Python3相較于Python2還有大量的改進(jìn)和提升的地方,這就使得Python2有了些許“雞肋”之感。因此,我們跟隨技術(shù)的發(fā)展和前進(jìn)的潮流,選擇Python3作為我們學(xué)習(xí)的對象。1.1Python簡介2Or3第一章Python3概述1.1.5如何學(xué)習(xí)Python*1*基礎(chǔ)語法先學(xué)習(xí)、后模仿、再自主創(chuàng)新。了解Python的數(shù)據(jù)類型、變量、判斷、循環(huán)、函數(shù)、類等等,逐步找到編程的感覺。*2*積極實踐俗話說“拳不離手,曲不離口”,程序編寫水平是在不斷的練習(xí)和實踐中提高的。*3*遵守規(guī)范建議使用Python編程的開發(fā)者,都應(yīng)遵循PEP8規(guī)范*4*自主學(xué)習(xí)也許你為了完成某些特定功能,需要使用一些還未了解的技術(shù),那就不要猶豫和等待,DIY!*5*善于交流積極主動的和其他學(xué)習(xí)者交流,取長補(bǔ)短。1.1Python簡介第一章Python3概述Python3的新特性1.1Python簡介345261print()andexec()函數(shù),舊版本里,print和exec是作為一語句使用,print“Hello,World!”,正確,在3.0中,應(yīng)寫成print(“Hello,World!”)。int和long統(tǒng)一為int,int表示任何精度的整數(shù),移除sys.maxint,因為int已經(jīng)是最大的整數(shù)。新版本移除了含糊的除法符號‘/’,而只返回浮點數(shù)。用input()代替raw_input(),源文件編碼從ASCII變?yōu)閁TF-8。比較:Python3對于值的比較要嚴(yán)格得多。在Python2中,任意兩個對象均可進(jìn)行比較。標(biāo)識符支持非ASCII字符代碼如下:所有=allclass男人
:@classmethod
湯姆=男人()
異常處理如:*增加異?;鵅aseException;
*移除了StandardError;
*拋出異常:使用raiseException(args)*捕獲異常:使用exceptExceptionasidentifier*異常鏈(Exceptionchain)字符串格式化變化:格式化字符串內(nèi)置的%操作符太有限了,新版本新增加了format(),比以前更靈活了,%要逐漸被淘汰。第一章Python3概述第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)1.2.1在Windows系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建進(jìn)入Python官方網(wǎng)站(https://www.P)下載安裝包進(jìn)入Windows版的下載頁面(https://www.P/downloads/windows/)web-basedinstaller:基于web的安裝文件,安裝過程中需要一直連接網(wǎng)絡(luò);executableinstaller:是可執(zhí)行的安裝文件,下載后直接雙擊開始安裝;embeddablezipfile:是安裝文件的zip格式壓縮包,下載后需要解壓縮之后再進(jìn)行安裝。Windowsx86-64executableinstaller:x86架構(gòu)的計算機(jī)的windows64位操作系統(tǒng)的可執(zhí)行安裝文件。這里我們下載的是“Windowsx86executableinstaller”第一章Python3概述1.2.1在Windows系統(tǒng)中安裝Python3安裝時需要選中最下方的AddPython3.6toPATH,即把Python3.6的可執(zhí)行文件、庫文件等路徑,添加到環(huán)境變量,這樣可以在windowsshell環(huán)境下面運行Python。1.2Python環(huán)境構(gòu)建第一章Python3概述1.2.1在Windows系統(tǒng)中安裝Python3Documentation:安裝Python文檔文件pip:下載和安裝Python包的工具td/tkandIDLE:安裝tkinter和IDLE開發(fā)環(huán)境Pythontestsuite:Python標(biāo)準(zhǔn)庫測試套件pylauncher:Python啟動器forallusers(requireselevation):所有用戶使用1.2Python環(huán)境構(gòu)建第一章Python3概述1.2.1在Windows系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建勾選Installforallusers針對所有用戶安裝,就可以按自己的需求修改安裝路徑第一章Python3概述1.2.1在Windows系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建安裝完成使用命令提示符進(jìn)行驗證,打開Windows的命令行模式,輸入“Python”或“python”,屏幕輸出如下圖所示,則說明Python解釋器成功運行,Python安裝完成,并且相關(guān)環(huán)境變量配置成功。第一章Python3概述1.2.2在Linux系統(tǒng)中安裝Python3Linux系統(tǒng)中自帶安裝有Python2.7,我們建議不要去改動它,因為系統(tǒng)中有依賴目前的Python2的程序。本部分使用CentOS7.2進(jìn)行安裝示例,其他發(fā)行版的安裝方法,見Python官網(wǎng)的說明。1.2Python環(huán)境構(gòu)建第一章Python3概述1.2.2在Linux系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建由于安裝時會使用gcc對Python3進(jìn)行編譯,這里需要先安裝gcc,在命令行中輸入如下命令進(jìn)行安裝:[root@pythonDesktop]#yuminstallgcc-y再使用wget命令到Python官網(wǎng)下載3.6.5的源碼安裝包,命令如下:[root@pythonDesktop]#wget/ftp/python/3.6.5/Python-3.6.5.tar.xz下載完成后使用tar命令對壓縮包解壓,命令如下:[root@pythonDesktop]#tar-xzvfPython-3.6.5.tar.xz第一章Python3概述1.2.2在Linux系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建解壓完成后會在當(dāng)前目錄下生產(chǎn)目錄python-3.6.5,使用cd命令切換到該目錄下,編譯安裝,命令如下:[root@pythonDesktop]#cd
python-3.6.5[root@pythonpython-3.6.5]#./configure[root@pythonpython-3.6.5]#make
&&
make
install編譯安裝完成后,在命令行使用
Python3命令運行Python3的解釋器,驗證安裝,如下圖所示第一章Python3概述1.2.3在MacOS系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建Mac上自帶的是是Python版本2.X,如果需要Python3.X,則需要自己手動進(jìn)行安裝可以使用
Python–V
在終端查看自己的Python版本。第一章Python3概述1.2.3在MacOS系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建訪問Python官方的下載頁面/downloads/mac-osx/下載Mac版本的Python3.6.5第一章Python3概述1.2.3在MacOS系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建下載完成后,雙擊安裝文件,一直點擊繼續(xù)進(jìn)行安裝,安裝過程較簡單,安裝完成后,在Launchpad中會多了兩個APP,如下圖所示。第一章Python3概述1.2.3在MacOS系統(tǒng)中安裝Python31.2Python環(huán)境構(gòu)建點擊IDLE進(jìn)入Python解釋器的shell,驗證安裝,如下圖所示第一章Python3概述第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)Python3.6.5安裝完成后,其自有的集成開發(fā)和學(xué)習(xí)環(huán)境IDLE(Python’sIntegratedDevelopmentandLearningEnvironment)就可以開始進(jìn)行編程了。編寫并執(zhí)行我們的第一個Python程序“HelloWorld!”1.3第一個程序HelloWorld!print("HelloWorld!")第一章Python3概述1.3第一個程序HelloWorld!第一種方法,在命令行模式下,進(jìn)入Python解釋器進(jìn)行代碼編寫,該方法可以簡單快速的開始我們的編程。在Windows(Windows7或10)操作系統(tǒng)中,使用快捷鍵“win”+“R”,彈出“運行”窗口,輸入cmd并確定,輸入Python進(jìn)入Python命令行,在提示符“>>>”之后,可以輸入程序代碼。這里輸入第一個Python程序的代碼:>>>print("HelloWorld!")完成輸入后回車執(zhí)行,執(zhí)行結(jié)果顯示在該代碼下一行,如下所示:第一章Python3概述1.3第一個程序HelloWorld!第二種方法,點擊Windows的“開始”菜單,從程序組中找到“Python3.6”下的“IDLE(Python3.632-bit)”快捷方式,如右圖所示:點擊并進(jìn)入到PythonIDLEShell窗口,在提示符“>>>”之后,輸入第一個Python程序的代碼:>>>print("HelloWorld!")完成輸入后回車執(zhí)行,如下圖所示:第一章Python3概述1.3.1程序簡析print():Python內(nèi)置函數(shù)名稱,作用是輸出括號中的內(nèi)容;"HelloWorld":字符串類型的數(shù)據(jù),作為參數(shù)傳遞給print函數(shù)1.3第一個程序HelloWorld!print("HelloWorld!")第一章Python3概述1.3.2print()函數(shù)1.3第一個程序HelloWorld!print()函數(shù)做進(jìn)一步說明,它的基本用法是:print("參數(shù)")print()是函數(shù),參數(shù)就是需要輸出的內(nèi)容,這些內(nèi)容可以是數(shù)值、字符串、布爾、列表或字典等數(shù)據(jù)類型。如果要輸出多個參數(shù),參數(shù)與參數(shù)之間用逗號隔開,如:print("China",countries)雙引號(或者使用單引號)內(nèi)的內(nèi)容稱為字符串常量,照原樣輸出內(nèi)容;沒有引號的countries是變量,會輸出代表內(nèi)容;print()函數(shù)執(zhí)行完成后默認(rèn)換行,如不需要換行,則在輸出內(nèi)容之后加上end=‘’,如:print(i,end='')第一章Python3概述1.3.3input()函數(shù)input()函數(shù)是Python語言中值的最基本輸入方法,通過用戶輸入,接受一個標(biāo)準(zhǔn)輸入數(shù)據(jù),默認(rèn)為string類型,基本用法:object=input('提示信息')object是需要接收用戶輸入的對象,提示信息的內(nèi)容在函數(shù)執(zhí)行時會顯示在屏幕上,用于提示用戶輸入。提示信息可以為空,即括號內(nèi)無內(nèi)容,函數(shù)執(zhí)行時不會提示信息。1.3第一個程序HelloWorld!第一章Python3概述1.3.3input()函數(shù)Input()函數(shù)的數(shù)據(jù)輸入時默認(rèn)為字符串類型,可以使用數(shù)據(jù)類型轉(zhuǎn)換函數(shù)進(jìn)行轉(zhuǎn)換,如:>>>age=input("請輸入年齡:")#定義變量請輸入年齡:18#執(zhí)行,輸入數(shù)值>>>print(type(age))#查看變量類型<class'str'>#返回結(jié)果>>>age=int(input("請輸入年齡:"))#重置變量,嵌套整型轉(zhuǎn)換請輸入年齡:18#執(zhí)行,輸入數(shù)值>>>print(type(age))#查看變量類型<class'int'>#返回結(jié)果1.3第一個程序HelloWorld!第一章Python3概述1.3.4注釋在Python代碼中加入必要的注釋,使其具有較好的可讀性。注釋分為兩種,單行注釋和多行注釋。單行注釋:使用“#”,其后(右邊)的內(nèi)容將不會被執(zhí)行,例如:#單行注釋的內(nèi)容單行注釋一般可放在一行程序代碼之后,或者獨自成行。1.3第一個程序HelloWorld!多行注釋:使用兩組,每組三個連續(xù)的雙引號(或者單引號),兩組引號之間為多行注釋的內(nèi)容,例如:"""多行注釋的內(nèi)容"""一個標(biāo)準(zhǔn)的完整的Python程序文件的頭部,應(yīng)有相關(guān)注釋來記錄編寫者姓名,實現(xiàn)的功能和編寫日期(修改日期)等重要信息。第一章Python3概述1.3.5IDLE使用簡介為了更好地使用IDLE進(jìn)行Python程序編寫,這里介紹一下IDLE的使用方法。IDLE作為Python的默認(rèn)開發(fā)和學(xué)習(xí)工具,具有以下特點:1.IDLE是一個百分百的純Python編寫的應(yīng)用程序,使用了tkinter的用戶界面工具集(tkinkerGUItoolkit)。2.跨平臺,在Windows、Unix和MacOSX上具有相同的效果。3.交互式的解釋器,對代碼的輸入、運行結(jié)果的輸出和錯誤信息均有友好的顏色提示,并且用戶可自定義顯示的顏色方案。4.支持多窗口的代碼編輯器,也支持多重撤銷,Python語法顏色區(qū)分,智能縮進(jìn),調(diào)用提示和自動補(bǔ)全等。5.任意窗口內(nèi)的搜索,編輯器窗口中的替換,以及多文件中的查找。6.具有斷點,步進(jìn),及全局和本地命名空間的調(diào)試器。更多詳內(nèi)容請查看本書內(nèi)容。1.3第一個程序HelloWorld!第一章Python3概述第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)1.4.1PyCharm的安裝PyCharm是JetBrains推出的一款Python的集成開發(fā)環(huán)境(IDE),具備一般IDE的常用功能,比如:調(diào)試、語法高亮顯示、項目管理、代碼跳轉(zhuǎn)、智能提示、自動完成和版本控制等。另外,PyCharm還提供了一些用于Django(一種基于Python的web應(yīng)用框架)開發(fā)的功能,同時支持GoogleAppEngine和IronPython。1.4實驗PyCharm有兩個重要版本:社區(qū)版和專業(yè)版;其中社區(qū)版是免費提供給使用者學(xué)習(xí)Python的版本,其功能可以滿足我們目前的學(xué)習(xí)需求官方下載地址:/pycharm/download/第一章Python3概述1.4.1PyCharm的安裝1.4實驗在官方網(wǎng)站下載最新版本的PyCharm社區(qū)版,如下圖:下載頁面提供了適用于Windows、macOS和Linux等操作系統(tǒng)的各版本PyCharm下載,其中Professional(專業(yè)版)可供試用,Community(社區(qū)版)是輕量級(Lightweight)的免費版,這里點擊Community(社區(qū)版)下的DOWNLOAD下載該版本。第一章Python3概述1.4.1PyCharm的安裝1.4實驗下載完成后雙擊進(jìn)入安裝向?qū)В缦聢D所示:第一章Python3概述1.4.1PyCharm的安裝1.4實驗第一章Python3概述1.4.1PyCharm的安裝1.4實驗安裝完成,勾選RunPyCharmCommunityEdition(運行PyCharm),然后點擊Finish完成安裝,如左圖所示:第一章Python3概述1.4.1PyCharm的安裝點擊Finish后,PyCharm開始運行,首次運行需要進(jìn)行簡單配置,界面上的選項如下:ImportPyCharmsettingsfrom:導(dǎo)入已存在的PyCharm設(shè)置Customlocation,Configfolderorinstallationhomeofthepreviousversion:自定義位置,配置文件的目錄或上一版本的安裝目錄Donotimportsettings:不導(dǎo)入任何設(shè)置由于是全新安裝,本地暫無其他任何可導(dǎo)入的配置,這里選擇Donotimportsettings即可,然后點擊OK。如圖所示:1.4實驗第一章Python3概述1.4.1PyCharm的安裝1.4實驗同意用戶協(xié)議之后,進(jìn)入到PyCharm啟動界面,如左圖,完成啟動加載過后進(jìn)入PyCharm歡迎界面,就完成了PyCharm的首次安裝和相關(guān)配置,如下圖。第一章Python3概述1.4.2實例:節(jié)日賀卡1.4實驗新建項目,開始節(jié)日賀卡的項目編程。第一章Python3概述1.4.2實例:節(jié)日賀卡1.4實驗在PyCharm中編寫Python程序。在編寫時,要注意添加注釋,并注意程序內(nèi)的縮進(jìn)。第一章Python3概述1.4.2實例:節(jié)日賀卡1.4實驗點擊該窗口右上角的綠色三角形按鈕,或按下鍵盤上SHIFT+F10運行程序,運行結(jié)果如下。第一章Python3概述1.4.3程序剖析在該程序文件的開頭編寫了注釋,簡單說明了我們編寫的這個程序要實現(xiàn)的功能、編寫者和編寫時間等,便于今后對這個程序的后續(xù)修改和維護(hù)。然后,定義了三個變量:holiday、To_name和Fr_name,且使用input()函數(shù)接收鍵盤輸入的字符,為它們賦值。最后,使用print()函數(shù)輸出賀卡內(nèi)容,print()沒有參數(shù)時輸出空行。在每個代碼行后面,我們使用了“#”添加注釋,是為了便于大家的閱讀和理解,不過實際項目中可能不需要在每行都添加注釋。1.4實驗第一章Python3概述第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)本章簡單介紹了Python的發(fā)展歷程和特性,Python版本的選擇,Python3.6.5版本在主流操作系統(tǒng)上的安裝方法,Python自帶的集成開發(fā)和學(xué)習(xí)環(huán)境IDLE的使用方法,以及另一種Python集成開發(fā)環(huán)境PyCharm的安裝和使用。根據(jù)IEEESpectrum于2017年發(fā)布的一份研究報告顯示,Python超越了C和Java,成為世界上最受歡迎的編程語言。重要的是,Python這種簡單加愉快的編程語言,在全球掀起了學(xué)習(xí)和使用的熱潮,越來越多的愛好者和團(tuán)隊加入到使用Python開發(fā)應(yīng)用程序的行列,可以預(yù)見的是,Python語言必將成長得更加強(qiáng)大,更加精致,更加完美。1.5小結(jié)第一章Python3概述第一章Python3概述1.1Python簡介1.2Python環(huán)境構(gòu)建1.3第一個程序HelloWorld!習(xí)題1.4實驗1.5小結(jié)1.簡述Python語言的設(shè)計特點。2.簡述Python2.X和Python3.X的區(qū)別。習(xí)題:第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)PEP82.1PEP8風(fēng)格指南PythonEnhancementProposal#8,是Python增強(qiáng)提案(PythonEnhancementProposals)中的第8號,縮寫為PEP8,它是針對Python代碼格式而編訂的風(fēng)格指南。本節(jié)將介紹PEP8的部分內(nèi)容,例如變量、函數(shù)和方法、屬性和類、模塊和包等關(guān)鍵因素的命名規(guī)則,以及運算符等相關(guān)規(guī)定,并強(qiáng)烈建議讀者在編寫Python程序源代碼時,應(yīng)該遵循該指南,可以使項目更利于多人協(xié)作,并且后續(xù)的維護(hù)工作也將變得更容易。第二章基本語法2.1.1變量全局變量使用英文大寫,單詞之間加下劃線:SCHOOL_NAME='TsinghuaUniversity'#學(xué)校名稱全局變量一般只在模塊內(nèi)有效,實現(xiàn)方法:使用__All__機(jī)制或添加一個前置下劃線。私有變量使用英文小寫和一個前導(dǎo)下劃線:_student_name內(nèi)置變量使用英文小寫,兩個前導(dǎo)下劃線和兩個后置下劃線:__maker__一般變量使用英文小寫,單詞之間加下劃線:class_name2.1PEP8風(fēng)格指南第二章基本語法2.1.1變量變量命名規(guī)則:名稱第一字符為英文字母或者下劃線名稱第一字符后可以使用英文字母、下劃線和數(shù)字名稱不能使用python的關(guān)鍵字或保留字符名稱區(qū)分大小寫,單詞與單詞之間使用下劃線連接2.1PEP8風(fēng)格指南第二章基本語法2.1.1變量Python3的關(guān)鍵字和保留字,可以從shell命令行中查看,方法如下:>>>importkeyword#導(dǎo)入keyword模塊>>>keyword.kwlist#調(diào)用kwlist顯示保留關(guān)鍵字列表['False','None','True','and','as','assert','break','class','continue','def','del','elif','else','except','finally','for','from','global','if','import','in','is','lambda','nonlocal','not','or','pass','raise','return','try','while','with','yield']2.1PEP8風(fēng)格指南第二章基本語法2.1.2函數(shù)和方法函數(shù)名是英文小寫,單詞之間加下劃線,提高可讀性。函數(shù)名不能與保留關(guān)鍵字沖突,如果沖突,最好在函數(shù)名后面添加一個后置下劃線,不要使用縮寫或單詞拆減,最好的方式是使用近義詞代替。實例方法的第一個參數(shù)總是使用self。類方法的第一個參數(shù)總是使用cls。2.1PEP8風(fēng)格指南第二章基本語法2.1.3屬性和類類的命名遵循首字母大寫(CapWords)的方式,大部分內(nèi)置的名字都是單個單詞(或兩個),首字母大寫方式只適用于異常名稱和內(nèi)置的常量,模塊內(nèi)部使用的類采用添加前導(dǎo)下劃線的方式。類的屬性(方法和變量)命名使用全部小寫的方式,可以使用下劃線。公有屬性不應(yīng)該有前導(dǎo)下劃線,如果公有屬性與保留關(guān)鍵字發(fā)生沖突,在屬性名后添加后置下劃線。對于簡單的公有數(shù)據(jù)屬性,最好是暴露屬性名,不使用復(fù)雜的訪問屬性或修改屬性的方法。如果該類是為了被繼承,有不讓子類使用的屬性,給屬性命名時可以給它們加上雙前導(dǎo)下劃線,不要加后置下劃線。為避免與子類屬性命名沖突,在類的一些屬性前,前綴兩條下劃線。比如:類Faa中聲明__a,訪問時,只能通過Faa._Faa__a,以避免歧義。2.1PEP8風(fēng)格指南第二章基本語法2.1.4模塊和包模塊命名要使用簡短的小寫英文的方式,可使用下劃線來提高可讀性。包的命名和模塊命名類似,但不推薦使用下劃線。模塊名對應(yīng)到文件名,有些模塊底層使用C或C++書寫,并有對應(yīng)的高層Python模塊,C/C++模塊名有一前置下劃線。2.1PEP8風(fēng)格指南第二章基本語法2.1.5規(guī)定下列運算符前后都需使用一個空格:=+-<>==>=<==andornot下列運算符前后不使用空格:*/**更多PEP8規(guī)則,請參考附錄A“Python代碼風(fēng)格指南:PEP8”。2.1PEP8風(fēng)格指南第二章基本語法第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)Python語言是面向?qū)ο螅∣bject)的編程語言,可以說在Python中一切皆對象。對象是某類型具體實例中的某一個,每個對象都有身份、類型和值?!裆矸荩↖dentity)與對象都是唯一對應(yīng)關(guān)系,每一個對象的身份產(chǎn)生后就都是獨一無二的,并無法改變。對象的ID是對象在內(nèi)存中獲取的一段地址的標(biāo)識?!耦愋停═ype)是決定對象將以哪種數(shù)據(jù)類型進(jìn)行存儲?!裰担╒alue)存儲對象的數(shù)據(jù),某些情況下可以修改值,某些對象聲明值過后就不可以修改了。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.1變量2.2.1變量指向?qū)ο蟮闹档拿Q就是變量,也就是一種標(biāo)識符,是對內(nèi)存中的存儲位置的命名。對于不同的對象,有不同的類型,得到的內(nèi)存地址也不一樣,通過對得到的地址進(jìn)行命名得到變量名稱,我們將數(shù)據(jù)存入變量,為存儲的數(shù)據(jù)設(shè)置不同的數(shù)據(jù)結(jié)構(gòu)。變量的值是在不斷的動態(tài)變化的,Python的變量可以不聲明直接賦值使用。由于Python采用動態(tài)類型(DynamicType),變量可以根據(jù)賦值類型決定變量的數(shù)據(jù)類型。在Python中,變量使用等號賦值以后會被創(chuàng)建,定義完成后可以直接使用。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.2變量命名規(guī)則Python對編碼格式要求嚴(yán)格,對變量命名建議遵守本章2.1.1關(guān)于變量命名規(guī)則部分。這里需要說明的是,如果在IDLE或PyCharm中編寫源代碼使用了Python的關(guān)鍵字或保留字(參見本章2.1.1),會有相應(yīng)的提示,或以顏色加以區(qū)分。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型Python有可以自由的改變變量的數(shù)據(jù)類型的動態(tài)類型和變量事先說明的靜態(tài)類型,特定類型是數(shù)值數(shù)據(jù)存入相應(yīng)的數(shù)據(jù)類型的變量中,相比下,動態(tài)數(shù)據(jù)類型更加靈活。變量的數(shù)據(jù)類型有多種類型,Python3中有六個標(biāo)準(zhǔn)的數(shù)據(jù)類型:●Numbers(數(shù)字類型)●Strings(字符串類型)●Lists(列表類型)●Tuples(元組類型)●Dictionaries(字典類型)●Sets(集合類型)2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型Python內(nèi)置的數(shù)字類型有整型(Integers)、浮點型(Floatingpointnumbers)和復(fù)數(shù)(Complexnumbers)三種,作為可以進(jìn)行算術(shù)運算等的數(shù)據(jù)類型。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型1、整型(Integers)整數(shù)類型(int)簡稱為整型,表示整數(shù),包括正負(fù)的整數(shù),如:0110、-123、123456789。Python的整型是長整型,能表達(dá)的數(shù)的范圍是無限的,內(nèi)存足夠大,就能表示足夠多的數(shù)。在使用整型的數(shù)還包括其它進(jìn)制,0b開始的是二進(jìn)制(binary),0o開始的是八進(jìn)制(octonary),0x開始的十六進(jìn)制(hexadecimal),進(jìn)制之間可以使用函數(shù)進(jìn)行轉(zhuǎn)換,使用時需要注意數(shù)值符合進(jìn)制。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型2、布爾型(Booleans)布爾值是整型(Integers)的子類,用于邏輯判斷真(True)或假(False),用數(shù)值1和0分別代表常量True和False。在Python語言中,F(xiàn)alse可以是數(shù)值為0、對象為None或者是序列中的空字符串、空列表、空元組。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型3、浮點型(Float)浮點型(Float)是含有小數(shù)的數(shù)值,用于實數(shù)的表示,由正負(fù)號、數(shù)字和小數(shù)點組成,正號可以省略,如:-3.0、0.13、7.18。Python的浮點型執(zhí)行IEEE754雙精度標(biāo)準(zhǔn),8個字節(jié)一個浮點,范圍-1.8308~+1.8308的數(shù)均可以表示。浮點型方法fromhex(s):十六進(jìn)制浮點數(shù)轉(zhuǎn)換為十進(jìn)制數(shù);hex():以字符串形式返回十六進(jìn)制的浮點數(shù);is_integer():判斷是否為小數(shù),小數(shù)非零返回False,為零返回True,轉(zhuǎn)換為布爾值。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型4、復(fù)數(shù)型(Complex)復(fù)數(shù)類型(Complex)由實數(shù)和虛數(shù)組成,用于復(fù)數(shù)的表示,虛數(shù)部分需加上j或J,如:-1j、0j,1.0j。Python的復(fù)數(shù)類型是其他語言一般沒有的。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.3數(shù)據(jù)類型5、字符串類型(Strings)字符串(Strings),用于Unicode字符序列,使用一對單引號、雙引號和使用三對單引號或者雙引號引起來的字符就是字符串,如'helloworld'、"20180520"、'''hello'''、"""happy!"""。嚴(yán)格地說,在Python中的字符串是一種對象類型,使用str表示,通常單引號''或者雙引號""包裹起來。字符串和前面講過的數(shù)字一樣,都是對象的類型,或者說都是值。如果不想讓反斜杠發(fā)生轉(zhuǎn)義,可以在字符串前面加個r表示原始字符串,加號+是字符串的連接符,星號*表示復(fù)制當(dāng)前的字符串,緊跟的數(shù)字為復(fù)制的次數(shù)。2.2變量與數(shù)據(jù)類型第二章基本語法2.2.4type()函數(shù)type()函數(shù)是內(nèi)建的用來查看變量類型的函數(shù),調(diào)用它可以簡單的查看數(shù)據(jù)類型,基本用法:type(對象)對象即為需要查看類型的對象或數(shù)據(jù),通過返回值返回相應(yīng)的類型,例:>>>type(1)#查看數(shù)值1的數(shù)據(jù)類型<class'int'>#返回結(jié)果>>>type("int")#查看”int”的數(shù)據(jù)類型<class'str'>#返回結(jié)果2.2變量與數(shù)據(jù)類型第二章基本語法2.2.5數(shù)據(jù)類型的轉(zhuǎn)換轉(zhuǎn)換為整型int類型:int(x[,base])int()函數(shù)將x轉(zhuǎn)換為一個整數(shù),x為字符串或數(shù)字,base進(jìn)制數(shù),默認(rèn)為十進(jìn)制。>>>int(100.1)#浮點轉(zhuǎn)整數(shù)100#返回結(jié)果>>>int('01010101',2)#二進(jìn)制轉(zhuǎn)換整數(shù)85#返回結(jié)果2.2變量與數(shù)據(jù)類型第二章基本語法2.2.5數(shù)據(jù)類型的轉(zhuǎn)換轉(zhuǎn)換為浮點型float類型:float(x)float()函數(shù)將x轉(zhuǎn)換為一個浮點數(shù),x為字符串或數(shù)字,沒有參數(shù)的時默認(rèn)返回0.0。>>>float()#空值轉(zhuǎn)換0.0#返回結(jié)果>>>float(1)#整數(shù)轉(zhuǎn)浮點1.0#返回結(jié)果>>>float('120')#字符轉(zhuǎn)浮點120.0#返回結(jié)果2.2變量與數(shù)據(jù)類型第二章基本語法2.2.5數(shù)據(jù)類型的轉(zhuǎn)換轉(zhuǎn)換為字符串str類型:str(x)str()函數(shù)將對象轉(zhuǎn)化為適于人閱讀的形式,x為對象,返回值為對象的string類型。>>>x="今天是晴天"#定義x>>>str(x)#對x進(jìn)行轉(zhuǎn)換'今天是晴天'#返回結(jié)果2.2變量與數(shù)據(jù)類型第二章基本語法2.2.5數(shù)據(jù)類型的轉(zhuǎn)換轉(zhuǎn)換為布爾值布爾類型:bool(x)bool()函數(shù)用于把給定參數(shù)轉(zhuǎn)換為布爾類型,返回值為True或者False,在沒有參數(shù)的情況下默認(rèn)返回False。>>>bool()#空置轉(zhuǎn)布爾類型False#返回結(jié)果>>>bool(0)#整數(shù)0轉(zhuǎn)布爾值False#返回結(jié)果>>>bool(1)#整數(shù)1轉(zhuǎn)布爾值True#返回結(jié)果>>>bool(100)#整數(shù)100轉(zhuǎn)布爾值True#返回結(jié)果2.2變量與數(shù)據(jù)類型第二章基本語法2.2.5數(shù)據(jù)類型的轉(zhuǎn)換Python中常用的數(shù)據(jù)類型:整數(shù)(int)、字符串(str)、布爾值(bool)、列表(list)、元組(tuple)、字典(dict)、浮點數(shù)(float)、復(fù)數(shù)(complex)、可變集合(set)之間可以按規(guī)則互相轉(zhuǎn)化。2.2變量與數(shù)據(jù)類型第二章基本語法第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)2.3.1算術(shù)運算符算術(shù)運算符主要是用于數(shù)字類型的數(shù)據(jù)基本運算,Python支持直接進(jìn)行計算,也就是可以將pythonshell當(dāng)計算器來使用。2.3表達(dá)式第二章基本語法2.3.2比較運算符比較運算符用于判斷同類型的對象是否相等,比較運算的結(jié)果是布爾值Ture或False,比較時因數(shù)據(jù)類型不同比較的依據(jù)不同。復(fù)數(shù)不可以比較大小,但可以比較是否相等。在Python中比較的值相同時也不一定是同一個對象。2.3表達(dá)式第二章基本語法2.3.3邏輯運算符邏輯運算符為and(與)、or(或)、not(非)用于邏輯運算判斷表達(dá)式的True或者False,通常與流程控制一起使用2.3表達(dá)式第二章基本語法2.3.4復(fù)合賦值運算符復(fù)合賦值運算符時將一個變量參與運算的運算結(jié)果賦值給改變量,即a參加了該運算,運算完成后結(jié)果賦值給a2.3表達(dá)式第二章基本語法2.3.5運算符優(yōu)先級由數(shù)值、變量、運算符組合的表達(dá)式和數(shù)學(xué)上相同,是有運算符優(yōu)先級的,優(yōu)先級高的運算符先進(jìn)行運算,同級運算符,自左向右運算,遵從小括號優(yōu)先原則。等號的同級運算時例外,一般都是自右向左進(jìn)行運算。2.3表達(dá)式第二章基本語法第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)2.4.1用常量和變量常量,Python中在程序運行時不會被更改的量稱之為常量,一旦初始化后就不能修改的固定值。Python中定義常量需要用對象的方法來創(chuàng)建。2.4實驗現(xiàn)在有直徑為68cm的下水道井蓋,需要求面積,其中Π直接使用數(shù)學(xué)庫中的pi,pi即為Python中的常量。第二章基本語法2.4.1用常量和變量實驗實例如下:>>>frommathimport*#引入數(shù)學(xué)庫>>>pi*(68/2)**2#計算3631.681107549801#計算結(jié)果>>>int(pi*(68/2)**2)#嵌套轉(zhuǎn)換為int類型3631#返回取整的結(jié)果2.4實驗現(xiàn)在有直徑為68cm的下水道井蓋,需要求面積,其中Π直接使用數(shù)學(xué)庫中的pi,pi即為Python中的常量。第二章基本語法2.4.1用常量和變量為a、b、c賦值為“Python編程”,“3.6”,“2018”,然后輸出“2018Python編程3.6”然后計算b和c的和,在輸出a的內(nèi)容。2.4實驗變量的使用Python中變量不需要聲明,使用等號直接賦值,值的數(shù)據(jù)類型為動態(tài)類型,也可以使用等號為多個變量賦值。第二章基本語法2.4.1用常量和變量為a、b、c賦值為“Python編程”,“3.6”,“2018”,然后輸出“2018Python編程3.6”然后計算b和c的和,在輸出a的內(nèi)容。2.4實驗實驗實例如下:>>>a,b,c='Python編程',3.6,2018#定義變量和賦值>>>print(str(c)+a+str(b))#打印2018Python編程3.6#打印結(jié)果>>>b+c#計算b+c2021.6#計算結(jié)果>>>a#輸出a的內(nèi)容'Python編程'#輸出第二章基本語法2.4.2用運算符和表達(dá)式由于Pythonshell可以直接當(dāng)計算器使用,輸入表達(dá)式后可以直接計算出結(jié)果,也可以使用變量。2.4實驗下面計算二的三次方加上三乘五除以十再加上二加一的結(jié)果,先使用直接計算,再使用變量。實驗實例如下:>>>1+2+3*5/10+2**3#輸入表達(dá)式12.5#返回計算結(jié)果>>>a=1+2+3*5/10+2**3#給變量a賦值的表達(dá)式>>>print(a)#輸出變量12.5#返回計算結(jié)果第二章基本語法2.4.3type()函數(shù)的使用type()函數(shù)是Python內(nèi)置的函數(shù)用于返回數(shù)據(jù)類型,當(dāng)我們要對一個變量賦值時,先要確定變量的數(shù)據(jù)類型,就會使用到type()函數(shù)。2.4實驗下面將對pi和一些變量進(jìn)行type()函數(shù)的使用實驗。實驗實例如下:>>>frommathimport*#導(dǎo)入數(shù)學(xué)庫>>>type(pi)#查詢pi的數(shù)據(jù)類型<class'float'>#返回為float類型>>>a=1#定義變量a并賦值>>>b="python"#定義變量b并賦值>>>c=2.5#定義變量c并賦值>>>>>>type(a)#查詢a的數(shù)據(jù)類型<class'int'>#返回int類型>>>type(b)#查詢b的數(shù)據(jù)類型<class'str'>#返回str類型>>>type(c)#查詢c的數(shù)據(jù)類型<class'float'>#返回float類型第二章基本語法2.4.4help()函數(shù)的使用help()函數(shù)是Python內(nèi)置用于查看函數(shù)或模塊用途的詳細(xì)說明文檔的幫助函數(shù)。在Python語言中有很多的函數(shù),一般在定義函數(shù)時會加上說明文檔,說明函數(shù)的功能以及使用方法。2.4實驗下面我們通過查看print()函數(shù)、input()函數(shù)和一些數(shù)據(jù)類型來進(jìn)行help()函數(shù)的使用實驗(部分文檔內(nèi)容進(jìn)行了刪減)。實驗實例如下:>>>help(print)#查詢print()函數(shù)的幫助Helponbuilt-infunctionprintinmodulebuiltins:print(...)print(value,...,sep='',end='\n',file=sys.stdout,flush=False)Printsthevaluestoastream,ortosys.stdoutbydefault.Optionalkeywordarguments:略第二章基本語法2.4.4help()函數(shù)的使用2.4實驗下面我們通過查看print()函數(shù)、input()函數(shù)和一些數(shù)據(jù)類型來進(jìn)行help()函數(shù)的使用實驗(部分文檔內(nèi)容進(jìn)行了刪減)。實驗實例如下:>>>help(input)#查詢input()函數(shù)的幫助Helponbuilt-infunctioninputinmodulebuiltins:input(prompt=None,/)略>>>help("int")#查詢int的使用說明Helponclassintinmodulebuiltins:classint(object)略>>>help("float")#查詢float的使用說明Helponclassfloatinmodulebuiltins:classfloat(object)略第二章基本語法第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)2.5小結(jié)本章主要對Python的代碼風(fēng)格、變量、數(shù)據(jù)類型、運算符進(jìn)行了簡單講解,都是學(xué)習(xí)Python語言的基礎(chǔ)知識,希望大家在學(xué)習(xí)是多加理解,對代碼風(fēng)格也要多加記憶和練習(xí),對Python的變量和運算符要經(jīng)常使用,加深印象,為后面更好的學(xué)習(xí)Python做準(zhǔn)備。第二章基本語法第二章基本語法2.1PEP8風(fēng)格指南2.2變量與數(shù)據(jù)類型2.3表達(dá)式習(xí)題2.4實驗2.5小結(jié)1.在python中,float的數(shù)據(jù)類型是如何表達(dá)的(實例)______。2.Int類型的數(shù)據(jù)轉(zhuǎn)換為布爾值類型的結(jié)果有______和______。3.要查詢變量的類型可以用______。4.運算符中優(yōu)先級最高的是______。5.Python中的數(shù)據(jù)類型分為______個大類,bool是哪一個大類中的______。習(xí)題:第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制習(xí)題3.4實驗3.5小結(jié)流程控制是指在程序運行時,對指令運行順序的控制。通常,程序流程結(jié)構(gòu)分為三種:順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)是程序中最常見的流程結(jié)構(gòu),按照程序中語句的先后順序,自上而下依次執(zhí)行,稱為順序結(jié)構(gòu);分支結(jié)構(gòu)則根據(jù)if條件的真假(True或者False)來決定要執(zhí)行的代碼;循環(huán)結(jié)構(gòu)則是重復(fù)執(zhí)行相同的代碼,直到整個循環(huán)完成或者使用break強(qiáng)制跳出循環(huán)。Python語言中,一般來說,我們使用if語句實現(xiàn)分支結(jié)構(gòu),用for和while語句實現(xiàn)循環(huán)結(jié)構(gòu)。第三章流程控制3.1條件語句流程圖,是使用圖形來表示流程控制的一種方法,是一種傳統(tǒng)的算法表示方法,用特定的圖形符號和文字對流程和算法加以說明,叫做算法的圖,也稱為流程圖。俗話說千言萬語不如一張圖。流程圖有它自己的規(guī)范,按照這樣的規(guī)范所畫出的流程圖,便于技術(shù)人員之間的交流,也是軟件項目開發(fā)所必備的基本組成部分,因此畫流程圖也應(yīng)是開發(fā)者的基本功。符號說明圓角矩形用來表示“開始”與“結(jié)束”。矩形用來表示要執(zhí)行的動作或算法。菱形用來表示問題判斷。平行四邊形用來表示輸入輸出。箭頭用來代表工作流方向。第三章流程控制3.1條件語句順序結(jié)構(gòu)是程序中最常見的流程結(jié)構(gòu),按照程序中語句的先后順序,自上而下依次執(zhí)行,稱為順序結(jié)構(gòu);語句塊1語句塊3語句塊2第三章流程控制3.1條件語句條件語句是用來判斷給定的條件是否滿足,并根據(jù)判斷的結(jié)果(True或False)決定是否執(zhí)行或如何執(zhí)行后續(xù)流……程的語句,它使代碼的執(zhí)行順序有了更多選擇,以實現(xiàn)更多的功能。一般來說,條件表達(dá)式是由條件運算符和相應(yīng)的數(shù)據(jù)所構(gòu)成的,在Python中,所有合法的表達(dá)式都可以作為條件表達(dá)式。條件表達(dá)式的值只要不是False、0、空值(None)、空列表、空集合、空元組、空字符串等,其它均為True。第三章流程控制3.1條件語句第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制習(xí)題3.4實驗3.5小結(jié)f語句是由if發(fā)起的一個條件語句,在滿足此條件后執(zhí)行相應(yīng)內(nèi)容,Python的語句基本結(jié)構(gòu)如下。if表達(dá)式1:語句塊1elif表達(dá)式2:語句塊2……else:語句塊n圖3.1分支選擇結(jié)構(gòu)表達(dá)式1語句1語句2TrueFalseTrueFalse表達(dá)式2語句n第三章流程控制3.2條件流程控制這里的elif,為elseif的縮寫,同時需要注意的是:1、else、elif為if語句的子語句塊,不能獨立使用。2、每個條件后面要使用冒號“:”,表示滿足條件后需要執(zhí)行的語句塊,后面幾種其它形式的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)中是冒號也是必須要有的。3、使用縮進(jìn)來劃分語句塊,相同縮進(jìn)數(shù)的語句組成一個語句塊。4、在Python中沒有switch…case語句。第三章流程控制3.2條件流程控制單向分支選擇結(jié)構(gòu)是最簡單的一種形式,不包含elif和else,當(dāng)表達(dá)式值為True時,執(zhí)行語句塊,否則該語句塊不執(zhí)行,繼續(xù)執(zhí)行后面的代碼。其語法如下。if表達(dá)式:
語句塊表達(dá)式語句塊TrueFalse圖3.2單分支選擇結(jié)構(gòu)第三章流程控制3.2條件流程控制雙分支語句是由if和else兩部分組成,當(dāng)表達(dá)式的值為True時,執(zhí)行語句塊1否則執(zhí)行語句塊2。雙分支選擇結(jié)構(gòu)的語法如下。if表達(dá)式:語句塊1else:語句塊2表達(dá)式語句塊1語句塊2True
False圖3.3雙分支選擇結(jié)構(gòu)第三章流程控制3.2條件流程控制例如判斷條件表達(dá)式的值是否為True,是則執(zhí)行語句塊1,否則執(zhí)行else部分,最后再輸出a的值。第三章流程控制3.2條件流程控制多分支選擇結(jié)構(gòu)由if、一個或多個elif和一個else子塊組成,else子塊可省略。一個if語句可以包含多個elif語句,但結(jié)尾最多只能有一個else。多分支選擇結(jié)構(gòu)的語法如下。if表達(dá)式1:語句塊1elif表達(dá)式2:語句塊2elif表達(dá)式3:語句塊3……else:語句塊n語句塊1語句塊2True表達(dá)式2表達(dá)式1表達(dá)式3語句塊3語句塊nTrueTrueFalseFalseFalse圖3.4多分支選擇結(jié)構(gòu)第三章流程控制3.2條件流程控制例如請輸入一個正整數(shù),判斷它是否能同時被2和3整除。第三章流程控制3.2條件流程控制選擇結(jié)構(gòu)可以進(jìn)行嵌套來表達(dá)更復(fù)雜的邏輯關(guān)系。使用選擇結(jié)構(gòu)嵌套時,一定要控制好不同級別的代碼塊的縮進(jìn),否則就不能被Python正確理解和執(zhí)行。在if語句嵌套中,if、if...else、if...elif...else它們可以進(jìn)行一次或多次相互嵌套,例如結(jié)構(gòu)如下。if表達(dá)式1:語句塊1if表達(dá)式2:語句塊2else:if表達(dá)式3:語句塊3else:語句塊4語句塊1語句塊2True表達(dá)式2表達(dá)式1表達(dá)式3語句塊3語句塊4TrueTrueFalseFalseFalse圖3.5選擇結(jié)構(gòu)嵌套第三章流程控制3.2條件流程控制例如請輸入一個正整數(shù),判斷它是否能同時被2和3整除。第三章流程控制3.2條件流程控制第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制習(xí)題3.4實驗3.5小結(jié)循環(huán),是我們生活中常見的,比如每天都要吃飯、上課、睡覺等,這就是典型的循環(huán)。循環(huán)結(jié)構(gòu)是指在程序中需要反復(fù)執(zhí)行某個功能而設(shè)置的一種程序結(jié)構(gòu)。Python提供for和while兩種循環(huán)語句。for語句,用來遍歷序列對象內(nèi)的元素,通常用在已知的循環(huán)次數(shù);while語句,提供了編寫通用循環(huán)的方法。語句塊TrueFalse循環(huán)條件圖3.6循環(huán)流程圖第三章流程控制3.3循環(huán)流程控制for循環(huán)的語法結(jié)構(gòu)跟前面講的if...else有點類似,記的時候不要記混淆了。for執(zhí)行時,依次將可迭代對象中的值賦給變量,變量每賦值一次,則執(zhí)行一次循環(huán)體。循環(huán)執(zhí)行結(jié)束時,如果有else部分,則執(zhí)行對應(yīng)的語句塊。else只有在循環(huán)正常結(jié)束時執(zhí)行。如果使用break跳出循環(huán),則不會執(zhí)行else部分,且根據(jù)實際編程需求,else部分可以省略。其結(jié)構(gòu)如下。for變量in序列或迭代對象:
循環(huán)體(語句塊1)else:
語句塊2注意:for和else后面冒號不能丟,循環(huán)體、語句塊縮進(jìn)嚴(yán)格對齊。第三章流程控制3.3循環(huán)流程控制例如求1~100的累加和,range()函數(shù)是生成1到100的整數(shù),Sum是累加的和。例如刪除列表對象中所有偶數(shù)。第三章流程控制3.3循環(huán)流程控制for循環(huán)嵌套是指在for循環(huán)里有一個或多個for語句,循環(huán)里面再嵌套一重循環(huán)的叫雙重循環(huán),嵌套兩層以上的叫多重循環(huán)。例如使用兩個for循環(huán)打印出九九乘法表,使用for循環(huán)和range()函數(shù),變量i控制外層循環(huán),變量j是控制內(nèi)層循環(huán)的次數(shù)。第三章流程控制3.3循環(huán)流程控制例如求1!+2!+3!+4!+…+10!的和第三章流程控制3.3循環(huán)流程控制break語句,它的作用是跳出循環(huán)或叫終止循環(huán),執(zhí)行循環(huán)后面的語句。continue語句是結(jié)束本次循環(huán)(循環(huán)體中continue后面的語句不執(zhí)行),進(jìn)入下一次循環(huán)。例如循環(huán)條件為True,當(dāng)i等于7的時候強(qiáng)制跳出循環(huán)。第三章流程控制3.3循環(huán)流程控制例如把50~80的不能被3整除的數(shù)輸出。第三章流程控制3.3循環(huán)流程控制在循環(huán)體中可以包含另一個循環(huán)或分支語句,在分支語句中也可以包含另一個分支或循環(huán)。例如將小寫字母轉(zhuǎn)換成大寫字母,大寫字母轉(zhuǎn)換成小寫字母,注意代碼縮進(jìn)。第三章流程控制3.3循環(huán)流程控制當(dāng)不知道循環(huán)次數(shù),但知道循環(huán)條件時,一般使用while語句。與for循環(huán)類似,可在循環(huán)體中使用break和continue語句。else部分可以省略。注意:在Python中沒有do...while語句。其語法結(jié)構(gòu)如下。while循環(huán)條件:循環(huán)體(語句塊1)else:語句塊2第三章流程控制3.3循環(huán)流程控制例如使用雙重while循環(huán)打印出一個倒三角形圖案。第三章流程控制3.3循環(huán)流程控制例如求50以內(nèi)所有5的倍數(shù)的和。第三章流程控制3.3循環(huán)流程控制第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制習(xí)題3.4實驗3.5小結(jié)1、從鍵盤輸入三個同學(xué)的成績,然后找出最高分。第三章流程控制3.4
實驗2、輸入三個同學(xué)的成績,然后大到小排列。第三章流程控制3.4
實驗1、求出1000以內(nèi)的所有完數(shù),如6=1+2+3除了它自身以外的因子之和等于它本身叫完數(shù)。第三章流程控制3.4
實驗2、用循環(huán)語句求1+22+333+4444+55555的和。第三章流程控制3.4
實驗1、求出2000-2100的所有閏年,條件是能同時被4和100整除,或者能被400整除的是閏年。第三章流程控制3.4
實驗2、輸入兩個正整數(shù),并求出它們的最大公約數(shù)和最小公倍數(shù)。第三章流程控制3.4
實驗1、輸出100以內(nèi)的所有質(zhì)數(shù)。第三章流程控制3.4
實驗2、求100以內(nèi)最大的10個質(zhì)數(shù)的和。第三章流程控制3.4
實驗1、求1-10的所有偶數(shù)的和。第三章流程控制3.4
實驗2、將10-20不能被2或3整除的數(shù)輸出。第三章流程控制3.4
實驗第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制習(xí)題3.4實驗3.4小結(jié)本章講解了Python的流程控制:if分支、for循環(huán)和while循環(huán)。if、for和while語法上很簡單,但通過組合或嵌套,可以實現(xiàn)各種簡單到復(fù)雜的程序邏輯結(jié)構(gòu)。為了保證程序流程控制的靈活性,Python提供了continue和break兩個語句來控制循環(huán)語句。continue語句用來結(jié)束本次循環(huán),提前進(jìn)入下一次循環(huán)。break語句用于強(qiáng)制退出循環(huán),不執(zhí)行循環(huán)體中剩余的循環(huán)次數(shù)。第三章流程控制3.5
小結(jié)第三章流程控制3.1條件語句3.2條件流程控制3.3循環(huán)流程控制
習(xí)題3.4實驗3.5小結(jié)1.______語句是else和if的組合。2.______、______不能單獨和if分支配合使用。3.每個流程結(jié)構(gòu)語句后面必須要有______。4.Python中的流程控制語句有______、______和______。5.當(dāng)循環(huán)______結(jié)束時才會執(zhí)行else部分。習(xí)題:第四章組合數(shù)據(jù)類型4.1列表4.2元組4.3字典4.4集合4.5實驗4.6小結(jié)習(xí)題4.1列表列表(Lists)屬于Python中的序列類型,它是任意對象的有序集合,通過“位置”或者“索引”訪問其中的元素,它具有可變對象、可變長度、異構(gòu)和任意嵌套的特點。第四章組合數(shù)據(jù)類型4.1.1創(chuàng)建列表列表里第一個元素的“位置”或者“索引”是從“0”開始,第二個元素的則是“1”,以此類推。在創(chuàng)建列表時,列表元素放置在方括號[]中,以逗號來分隔各元素,格式如下:listname=[元素1,元素2,元素3,……,元素n]舉例如下:sample_list1=[0,1,2,3,4]sample_list2=["P","y","t","h","o","n"]sample_list3=['Python','sample','list','for','your','reference']4.1.1創(chuàng)建列表第四章組合數(shù)據(jù)類型4.1列表代碼運行如下:>>>sample_list1=[0,1,2,3,4]#列表sample_list1>>>sample_list2=["P","y","t","h","o","n"]#列表sample_list2>>>sample_list3=['Python','sample','list','for','your','reference']#列表sample_list3>>>print(sample_list1)#打印輸出列表[0,1,2,3,4]#輸出結(jié)果>>>print(sample_list2)#打印輸出列表['p','y','t','h','o','n']#輸出結(jié)果>>
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度金融信息服務(wù)臨時工勞動合同書
- 2025年度商鋪租賃合同范本:現(xiàn)代商業(yè)綜合體租賃管理細(xì)則3篇
- 個性化私人合作協(xié)議模板2024版B版
- 2025年度個人與個人草原保護(hù)管理服務(wù)合同范本3篇
- 2025年字畫裝裱作品定制與售后服務(wù)合同3篇
- 2025年度美甲行業(yè)品牌形象設(shè)計與承包合同
- 2025年精裝房裝修材料運輸與儲存合同3篇
- 土地登記相關(guān)法律知識-土地登記代理人《土地登記相關(guān)法律》押題密卷1
- 2025年度生態(tài)環(huán)保技術(shù)引進(jìn)承包合同規(guī)范范本4篇
- 2025版文化創(chuàng)意設(shè)計師專屬聘用協(xié)議3篇
- 《社會工作實務(wù)》全冊配套完整課件3
- 單位違反會風(fēng)會書檢討書
- 2024年4月自考00832英語詞匯學(xué)試題
- 《電力用直流電源系統(tǒng)蓄電池組遠(yuǎn)程充放電技術(shù)規(guī)范》
- 《哪吒之魔童降世》中的哪吒形象分析
- 信息化運維服務(wù)信息化運維方案
- 汽車修理廠員工守則
- 公安交通管理行政處罰決定書式樣
- 10.《運動技能學(xué)習(xí)與控制》李強(qiáng)
- 冀教版數(shù)學(xué)七年級下冊綜合訓(xùn)練100題含答案
- 1神經(jīng)外科分級護(hù)理制度
評論
0/150
提交評論