版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章Python概述《Python快速編程入門(第3版))》學(xué)習(xí)目標(biāo)/Target了解Python語言,能夠說出Python語言的發(fā)展歷程以及特點熟悉Python程序的運(yùn)行方式,能夠熟練通過交互式和文件式運(yùn)行Python程序了解常用的開發(fā)工具,能夠說出常用開發(fā)工具的特點掌握Python解釋器的安裝方式,能夠獨立在計算機(jī)中安裝Python解釋器學(xué)習(xí)目標(biāo)/Target掌握模塊的安裝方式,能夠通過pip工具安裝所需的模塊掌握模塊的導(dǎo)入與使用,能夠在程序中熟練導(dǎo)入并使用模塊掌握PyCharm的使用,能夠使用PyCharm編寫并運(yùn)行代碼掌握PyCharm的下載與安裝,能夠獨立在計算機(jī)中安裝PyCharm工具章節(jié)概述/SummaryPython語言自誕生以來,因其具有簡潔優(yōu)美的語法、良好的開發(fā)效率、強(qiáng)大的生態(tài)系統(tǒng)等特點,迅速在編程領(lǐng)域占據(jù)一席之地,成為當(dāng)前備受矚目的熱門編程語言。Python領(lǐng)域流傳著這樣一句話:“人生苦短,我用Python。”,表達(dá)了人們對這門語言的高度認(rèn)可。下面我們一起開啟Python學(xué)習(xí)之旅吧!目錄/Contents010203認(rèn)識PythonPython解釋器的安裝與程序的運(yùn)行Python開發(fā)工具04Python模塊認(rèn)識Python1.1
先定一個小目標(biāo)!了解Python語言,能夠說出Python語言的發(fā)展歷程1.1.1Python的發(fā)展歷程1.1.1Python的發(fā)展歷程199120002008201820202023Python2.0版本發(fā)布2020年1月1日終止對Python2.7的技術(shù)支持截止2023年9月1日,最新版本為Python3.11.5Python2.0版本發(fā)布Python3.0版本發(fā)布最后一個Python2.7版本發(fā)布
先定一個小目標(biāo)!1.1.2Python的特點了解Python語言,能夠說出Python語言的特點1.1.2Python的特點無縫銜接單元測試VS優(yōu)點簡潔語法優(yōu)美簡單易學(xué)開源可移植性好擴(kuò)展性好類庫豐富通用靈活良好的中文支持執(zhí)行效率不夠高。在執(zhí)行相同功能的程序時,Python程序沒有C++程序、Java程序高效,這是因為Python解釋器需要逐行將代碼翻譯成計算機(jī)能夠理解的機(jī)器語言,翻譯過程是非常耗時的。缺點Python解釋器的安裝與程序的運(yùn)行1.2
先定一個小目標(biāo)!掌握Python解釋器的安裝方式,能夠獨立在計算機(jī)中安裝Python解釋器1.2.1安裝Python解釋器Python程序的執(zhí)行需要借助Python解釋器完成,只有在計算機(jī)中安裝Python解釋器并配置好Python開發(fā)環(huán)境后,開發(fā)人員才可以開發(fā)程序,并通過不同方式運(yùn)行程序。1.2.1安裝Python解釋器STEP01下載Python解釋器在瀏覽器中訪問Python解釋器的下載頁面,具體如下圖所示。1.2.1安裝Python解釋器STEP02下載Python解釋器Python解釋器安裝包的下載頁面,該頁面展示了很多版本的安裝包。1.2.1安裝Python解釋器STEP03安裝Python解釋器下載相應(yīng)版本的安裝包。下載完成后,找到并雙擊安裝包,彈出Python3.11.5(64-bit)Setup窗口。1.2.1安裝Python解釋器STEP04安裝Python解釋器勾選“Addpython.exetoPATH”選項后,單擊InstallNow后進(jìn)入SetupProgress界面。1.2.1安裝Python解釋器STEP05安裝Python解釋器安裝完成后會自動進(jìn)入Setupwassuccessful界面。1.2.1安裝Python解釋器STEP06安裝Python解釋器在計算機(jī)的開始菜單中搜索Python,找到并單擊Python3.11(64-bit)打開Python解釋器窗口。1.2.1安裝Python解釋器STEP06安裝Python解釋器用戶也可以在命令窗口中進(jìn)入Python環(huán)境,具體操作為:打開命令窗口,在命令窗口的提示符“>>>”后輸入“python”,按下回車鍵后即可進(jìn)入Python環(huán)境。1.2.1安裝Python解釋器多學(xué)一招:手動配置環(huán)境變量若Python解釋器安裝完成后,在命令窗口輸入“python”提示“python不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件?!保f明系統(tǒng)未能搜索到Python解釋器的安裝路徑,此時可以手動為Python配置環(huán)境變量,以解決此問題。多學(xué)一招:手動配置環(huán)境變量環(huán)境變量(enviromentvariables)一般是指在操作系統(tǒng)中用來指定操作系統(tǒng)運(yùn)行環(huán)境的一些參數(shù),如臨時文件夾位置和系統(tǒng)文件夾位置等。在向Windows和DOS操作系統(tǒng)中搭建開發(fā)環(huán)境時常常需要配置環(huán)境變量path,以便系統(tǒng)在運(yùn)行一個程序時可以獲取到程序所在的完整路徑。若配置了環(huán)境變量,系統(tǒng)除了在當(dāng)前目錄下尋找指定程序,還會到path變量所指定的路徑中查找程序。STEP01打開系統(tǒng)屬性窗口右鍵單擊“計算機(jī)”,在彈出的菜單中單擊“屬性”選項打開系統(tǒng)窗口,單擊該窗口左側(cè)選項列表中的“高級系統(tǒng)設(shè)置”,打開系統(tǒng)屬性窗口。多學(xué)一招:手動配置環(huán)境變量STEP02打開環(huán)境變量窗口單擊“環(huán)境變量”按鈕,打開環(huán)境變量窗口。多學(xué)一招:手動配置環(huán)境變量STEP03編輯環(huán)境變量對話框在“系統(tǒng)變量”列表中找到環(huán)境變量“Path”并雙擊,打開編輯環(huán)境變量對話框。多學(xué)一招:手動配置環(huán)境變量STEP04添加Python安裝路徑單擊“新建”按鈕,輸入Python解釋器的安裝路徑,本書使用的安裝路徑是C:\Users\itcast\AppData\Local\Programs\Python\Python311。多學(xué)一招:手動配置環(huán)境變量STEP05STEP05單擊“確定”按鈕,關(guān)閉編輯環(huán)境變量對話框,完成環(huán)境變量的配置。
先定一個小目標(biāo)!熟悉Python程序的運(yùn)行方式,能夠熟練通過交互式和文件式運(yùn)行Python程序1.2.2Python程序的運(yùn)行方式Python程序的運(yùn)行方式有兩種,分別是交互式和文件式。交互式指Python解釋器逐行接收Python代碼并即時響應(yīng);文件式也稱批量式,指先將Python代碼保存在后綴名為.py的文件中,再啟動Python解釋器批量運(yùn)行代碼。1.2.2Python程序的運(yùn)行方式STEP01打開命令窗口進(jìn)入Python環(huán)境,在命令提示符“>>>”的后面輸入如下一行代碼:1.2.2Python程序的運(yùn)行方式print("紙上得來終覺淺,絕知此事要躬行。")按下回車鍵,命令窗口立刻在提示符的下一行輸出了運(yùn)行結(jié)果。運(yùn)行結(jié)果如下所示:紙上得來終覺淺,絕知此事要躬行。STEP011.創(chuàng)建一個文本文件,在該文件中寫入一行Python代碼,具體內(nèi)容為print("紙上得來終覺淺,絕知此事要躬行。")2.另存文件時將文件的名稱設(shè)置為hello,編碼方式設(shè)置為UTF-8,文件的后綴名修改為.py。3.在hello.py文件所在路徑下同時按下Shift鍵和鼠標(biāo)右鍵,彈出右鍵菜單,在右鍵菜單列表中單擊“在此處打開命令窗口”選項,打開命令窗口。4.在命令窗口的命令提示符“>”后輸入命令“pythonhello.py”,按下回車鍵后運(yùn)行hello.py文件,之后在提示符的下一行輸出了運(yùn)行結(jié)果。1.2.2Python程序的運(yùn)行方式Python開發(fā)工具1.3
先定一個小目標(biāo)!了解常用的開發(fā)工具,能夠說出常用開發(fā)工具的特點1.3.1Python程序的運(yùn)行方式1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。PyCharm是一款強(qiáng)大且流行的Python集成開發(fā)環(huán)境,它提供了一般集成開發(fā)環(huán)境的功能,比如代碼編輯、語法高亮、項目管理、代碼跳轉(zhuǎn)、智能提示、調(diào)試、單元測試、版本控制等,使得程序的編寫、運(yùn)行、測試等過程能在一個環(huán)境中完成,非常適合開發(fā)大型的項目。VisualStudioCodeSublimeTextJupyterNotebook1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。SublimeText是一款輕量級但功能強(qiáng)大的文本編輯器,它不僅擁有豐富的功能,還支持多種編程語言,并且具備自己的包管理器。開發(fā)者可以通過包管理器安裝各種組件、插件和樣式,以提升編碼體驗。SublimeText在開發(fā)簡單的Python項目方面表現(xiàn)優(yōu)異。VisualStudioCodeSublimeTextJupyterNotebook1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。VisualStudioCode(簡稱VSCode)是由微軟開發(fā)的一個跨平臺的輕量級代碼編輯器,它支持多種編程語言,包括Python、Java、C++、PHP等,具有跨平臺支持、豐富的插件生態(tài)系統(tǒng)、智能代碼編輯、內(nèi)置調(diào)試器、版本控制集成等一些特點或功能,適用于各種規(guī)模的項目開發(fā)。VisualStudioCodeSublimeTextJupyterNotebook1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。JupyterNotebook(簡稱Jupyter)是一款非常流行的交互式筆記本,它在網(wǎng)頁上提供了創(chuàng)建文檔與共享文檔的便利,并且支持實時代碼、數(shù)學(xué)方程、可視化和Markdown等功能,用戶可以在一個文檔中進(jìn)行編寫代碼、編寫數(shù)學(xué)公式、編寫文檔、運(yùn)行代碼、可視化等一些操作。此外,JupyterNotebook可以運(yùn)行多種編程語言,包括但不限于Python,它非常適合數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)和教育領(lǐng)域的開發(fā)和演示。VisualStudioCodeJupyterNotebookSublimeText1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。Anaconda是一種Python發(fā)行版,專注于提供科學(xué)計算和數(shù)據(jù)分析所需的軟件包和工具。它包括conda包管理器、AnacondaNavigator和JupyterNotebook,還提供了虛擬環(huán)境、打包和發(fā)布自己的包、快速生成報告等功能。Anaconda還支持多種編程語言和工具,使得它成為了數(shù)據(jù)科學(xué)家和研究人員進(jìn)行科學(xué)計算的首選工具。VisualStudioCodeSublimeTextJupyterNotebook
先定一個小目標(biāo)!掌握PyCharm的下載與安裝,能夠獨立在計算機(jī)中安裝PyCharm工具1.3.2PyCharm的下載與安裝STEP01PyCharm的下載在瀏覽器中訪問PyCharm官網(wǎng)的下載頁面,具體如下圖所示。1.3.2PyCharm的下載與安裝Professional和Community是PyCharm的兩個版本,這兩個版本的特點如下。1.提供PythonIDE的所有功能,支持Web開發(fā)。2.支持Django、Flask、GoogleApp引擎、Pyramid和web2py。3.支持JavaScript、CoffeeScript、TypeScript、CSS和Cython等。4.支持遠(yuǎn)程開發(fā)、Python分析器、數(shù)據(jù)庫和SQL語句。Professional版本的特點Community版本的特點1.輕量級的PythonIDE,只支持Python開發(fā)。2.免費、開源、集成Apache2的許可證。3.智能編輯器、調(diào)試器、支持重構(gòu)和錯誤檢查,集成版本控制系統(tǒng)。1.3.2PyCharm的下載與安裝STEP01PyCharm的安裝雙擊安裝包打開WelcometoPyCharmCommunityEditionSetup界面。1.3.2PyCharm的下載與安裝STEP02PyCharm的安裝單擊“Next”按鈕進(jìn)入ChooseInstallLocation界面。1.3.2PyCharm的下載與安裝STEP03PyCharm的安裝保持默認(rèn)配置,單擊“Next”按鈕,進(jìn)入InstallationOptions界面,在該界面用戶可根據(jù)需求勾選相應(yīng)功能。1.3.2PyCharm的下載與安裝STEP04PyCharm的安裝勾選所有選項,單擊“Next”按鈕進(jìn)入ChooseStartMenuFolder界面。1.3.2PyCharm的下載與安裝STEP05PyCharm的安裝單擊的“Install”按鈕開始安裝PyCharm工具,安裝完成后進(jìn)入CompletingPyCharmCommunityEditionSetup界面。1.3.2PyCharm的下載與安裝
先定一個小目標(biāo)!掌握PyCharm的使用,能夠使用PyCharm編寫并運(yùn)行代碼1.3.3使用PyCharm編寫Python程序STEP01雙擊桌面上的PyCharm快捷方式圖標(biāo),打開WelcometoPyCharm窗口。1.3.3使用PyCharm編寫Python程序STEP02單擊窗口左側(cè)的Customize菜單項打開自定義配置面板,在該面板中選擇顏色主題為Light。1.3.3使用PyCharm編寫Python程序STEP03單擊窗口左側(cè)的Projects菜單項,切換回項目面板,單擊該面板中的“NewProject”按鈕進(jìn)入NewProject窗口。1.3.3使用PyCharm編寫Python程序STEP04單擊“Create”按鈕會在D:\PythonProject目錄下創(chuàng)建一個名稱為first_proj的項目,并進(jìn)入項目管理窗口。1.3.3使用PyCharm編寫Python程序STEP05單擊“Create”按鈕會在D:\PythonProject目錄下創(chuàng)建一個名稱為first_proj的項目,并進(jìn)入項目管理窗口。1.3.3使用PyCharm編寫Python程序STEP06單擊左上方標(biāo)注的文件夾圖標(biāo),彈出項目的目錄結(jié)構(gòu)。1.3.3使用PyCharm編寫Python程序STEP07選中first_proj項目的根目錄右擊,在彈出的下拉菜單中選擇“New”→“PythonFile”,彈出NewPythonfile窗口,用于給項目添加保存代碼的Python文件。1.3.3使用PyCharm編寫Python程序STEP08PyCharm的使用選中first_proj項目的根目錄右擊,在彈出的下拉菜單中選擇“New”→“PythonFile”,彈出NewPythonfile窗口,用于給項目添加保存代碼的Python文件。1.3.3使用PyCharm編寫Python程序STEP09在Name文本框中,填寫Python文件的名稱為first,按下回車鍵后會在first_proj項目的根目錄下添加first.py文件。print("書山有路勤為徑,學(xué)海無涯苦作舟")1.3.3使用PyCharm編寫Python程序STEP10編寫完畢后,單擊窗口上方的
按鈕,或者按組合鍵“Shift+F10”會立即運(yùn)行該文件的代碼,代碼的運(yùn)行結(jié)果會顯示到窗口下方的控制臺面板中。1.3.3使用PyCharm編寫Python程序Python模塊1.41.4.1
模塊的安裝
先定一個小目標(biāo)!掌握模塊的安裝方式,能夠通過pip工具安裝所需的模塊Python中支持以模塊的形式組織和管理代碼,一個擴(kuò)展名為.py的文件稱之為一個模塊,文件的名稱為模塊的名稱。Python內(nèi)置了一些標(biāo)準(zhǔn)模塊,Python的使用者也貢獻(xiàn)了豐富且強(qiáng)大的第三方模塊,標(biāo)準(zhǔn)模塊可以直接導(dǎo)入程序并使用,而第三方模塊需要先行安裝。1.4.1
模塊的安裝第三方模塊的安裝需要借助pip工具,pip工具是一個通用的Python
模塊、包或庫的管理工具,它提供了查找、下載、安裝、卸載Python模塊、包或庫的功能。默認(rèn)情況下,安裝Python解釋器時會自動安裝pip工具。使用pip工具安裝模塊的命令有三種。1.4.1
模塊的安裝pipinstall模塊名pipinstall模塊名==版本號pipinstall模塊名1模塊名2模塊名3...例如,在開發(fā)環(huán)境中安裝開發(fā)游戲的pygame模塊,具體命令如下:1.4.1
模塊的安裝pipinstallpygame以上命令執(zhí)行后,可以看到命令窗口中顯示了以下信息。Installingcollectedpackages:pygameSuccessfullyinstalledpygame-2.5.2如果想驗證開發(fā)環(huán)境中是否有這個模塊,那么可以在命令窗口中輸入piplist命令進(jìn)行查看。例如,使用piplist命令查看當(dāng)前開發(fā)環(huán)境中已經(jīng)安裝的模塊,命令及執(zhí)行結(jié)果如下所示1.4.1
模塊的安裝C:\Users\itcast>piplistPackageVersion----------------------……pygame 2.5.2需要注意的是,pip是在線工具,它只有在聯(lián)網(wǎng)的狀態(tài)下才可以下載相應(yīng)的資源,若網(wǎng)絡(luò)未連接或網(wǎng)絡(luò)環(huán)境不佳,則pip工具將無法順利安裝第三方模塊。1.4.2模塊的導(dǎo)入與使用
先定一個小目標(biāo)!掌握模塊的導(dǎo)入與使用,能夠在程序中熟練導(dǎo)入并使用模塊在使用模塊之前,需要先將模塊導(dǎo)入到當(dāng)前程序。Python中使用import語句導(dǎo)入模塊,import語句支持一次導(dǎo)入一個模塊,也支持一次導(dǎo)入多個模塊。使用import語句導(dǎo)入模塊的語法格式如下。import模塊1,模塊2,...1.4.2模塊的導(dǎo)入與使用例如,在程序中導(dǎo)入pygame模塊,具體代碼如下:importpygame模塊導(dǎo)入后,可以通過點字符“.”使用模塊中的內(nèi)容,包括后面會介紹的變量、函數(shù)、類等。使用模塊內(nèi)容的語法格式如下:模塊.變量模塊.函數(shù)模塊.類1.4.2模塊的導(dǎo)入與使用例如,通過pygame模塊使用其中的init()函數(shù),具體代碼如下:pygame.init()通過點字符“.”使用模塊中的內(nèi)容時,可以避免多個模塊中存在同名變量、函數(shù)或類的情況下使代碼產(chǎn)生歧義,但若不存在同名變量、函數(shù)或類,則可以使用“from模塊名import?”直接將模塊中的指定內(nèi)容導(dǎo)入程序,并在程序中直接使用模塊中的內(nèi)容。例如,在程序中導(dǎo)入pygame模塊的init()函數(shù),并直接使用該函數(shù),具體代碼如下1.4.2模塊的導(dǎo)入與使用frompygameimportinitinit()使用“from模塊名import?”語句還可以將指定模塊的全部內(nèi)容導(dǎo)入當(dāng)前程序,這時只需要將import后面指定的內(nèi)容替換為“*”,即可指代模塊中的全部內(nèi)容。例如,在程序中導(dǎo)入pygame模塊的全部內(nèi)容,具體代碼如下:1.4.2模塊的導(dǎo)入與使用frompygameimport*需要注意的是,雖然使用“from模塊名import*”可以方便地導(dǎo)入一個模塊中的所有內(nèi)容,但出于代碼的可維護(hù)性考慮,我們不建議過多使用這種方式。在Python中,代碼的組織方式有三個層次,分別是模塊(Module)、包(Package)和庫(Library),關(guān)于它們的介紹如下。模塊是Python中最基本的組織單位,它是一個包含了變量、函數(shù)、類和語句的文件。通過將相關(guān)的功能代碼放在一個模塊文件中,可以實現(xiàn)代碼的重用和模塊化。包是一個包含了多個模塊的目錄。包的目錄需要包含一個特殊的__init__.py文件,用于指示該目錄是一個包。包可以有多層次的結(jié)構(gòu),通過將相關(guān)的模塊組織在一個包中,可以更好地管理和組織代碼。庫是一個包含了多個模塊或包的集合,它提供了一組相關(guān)的功能和工具,用于解決特定的問題或?qū)崿F(xiàn)特定的功能。例如,NumPy是一個常用的科學(xué)計算庫,它包含了多個模塊和子包,提供了各種數(shù)值計算和數(shù)組操作的功能。多學(xué)一招:代碼的組織方式——模塊、包和庫本章小結(jié)本章首先從Python的發(fā)展歷程和特點兩個方面簡單介紹了Python;然后介紹了如何安裝Python解釋器、運(yùn)行Python程序;之后介紹了常用的Python開發(fā)工具和PyCharm工具的安裝與使用;最后介紹了Python模塊的安裝、導(dǎo)入與使用。通過學(xué)習(xí)本章的內(nèi)容,讀者能夠?qū)ython語言有簡單的認(rèn)識,熟練搭建Python開發(fā)環(huán)境并熟悉模塊的安裝和使用。本章小結(jié)第2章Python基礎(chǔ)《Python快速編程入門(第3版))》學(xué)習(xí)目標(biāo)/Target熟悉代碼格式,能夠歸納出注釋、縮進(jìn)和語句換行的規(guī)范熟悉關(guān)鍵字,能夠列舉至少5個關(guān)鍵字掌握變量的定義與使用,能夠熟練定義并使用變量訪問數(shù)據(jù)熟悉標(biāo)識符的命名規(guī)則,能夠在程序中使用合法的標(biāo)識符學(xué)習(xí)目標(biāo)/Target掌握數(shù)字類型,能夠在程序中正確處理數(shù)字類型的數(shù)據(jù)掌握數(shù)字類型的轉(zhuǎn)換,能夠根據(jù)需要進(jìn)行數(shù)字類型的轉(zhuǎn)換掌握變量的輸入與輸出,能夠通過input()和print()函數(shù)實現(xiàn)輸入與輸出的功能了解常用的數(shù)據(jù)類型,能夠復(fù)述每種數(shù)據(jù)類型的特點掌握運(yùn)算符的使用,能夠根據(jù)需要選擇運(yùn)算符進(jìn)行運(yùn)算章節(jié)概述/Summary“萬丈高樓平地起”,再高的大樓都是從平地修建起的,學(xué)習(xí)Python編程也是同樣的道理。在開始編寫Python程序之前,我們需要先掌握Python的基礎(chǔ)知識。只有把基礎(chǔ)打牢才能邁向更高的學(xué)習(xí)階段。本章將針對Python的基礎(chǔ)知識,包括代碼格式、標(biāo)識符、關(guān)鍵字、變量、數(shù)據(jù)類型、數(shù)字類型和運(yùn)算符進(jìn)行詳細(xì)講解。目錄/Contents010203代碼格式標(biāo)識符和關(guān)鍵字變量和數(shù)據(jù)類型04實訓(xùn)案例目錄/Contents050607數(shù)字類型運(yùn)算符實訓(xùn)案例代碼格式2.1
先定一個小目標(biāo)!熟悉代碼格式,能夠歸納出注釋的規(guī)范2.1.1注釋2.1.1注釋注釋是代碼中穿插的輔助性文字,用于標(biāo)識代碼的含義與功能,提高代碼的可讀性。注釋在Python解釋器執(zhí)行時會被自動忽略,不會對程序產(chǎn)生任何影響。Python程序中的注釋分為單行注釋和多行注釋。2.1.1注釋1.單行注釋單行注釋以“#”開頭,“#”后面的內(nèi)容用于說明當(dāng)前行或當(dāng)前行之后代碼的功能。單行注釋既可以單獨占一行,也可以位于標(biāo)識的代碼之后,與標(biāo)識的代碼共占一行。示例如下:#我是單行注釋print('志當(dāng)存高遠(yuǎn)')#我也是單行注釋為了保證注釋的可讀性,Python官方建議“#”后面先添加一個空格,再添加相應(yīng)的說明文字;若單行注釋與代碼共占一行,注釋和代碼之間至少應(yīng)有兩個空格。2.1.1注釋2.多行注釋多行注釋是由三對雙引號或單引號包裹的內(nèi)容,主要用于說明函數(shù)或類的功能,因此多行注釋也被稱為說明文檔。例如,Python內(nèi)置函數(shù)print()對應(yīng)的多行注釋如下:"""Printsthevaluestoastream,ortosys.stdoutbydefault.sep:stringinsertedbetweenvalues,defaultaspace.end:stringappendedafterthelastvalue,defaultanewline.file:afile-likeobject(stream);defaultstothecurrentsys.stdout.flush:whethertoforciblyflushthestream."""
先定一個小目標(biāo)!2.1.2縮進(jìn)熟悉代碼格式,能夠歸納出縮進(jìn)的規(guī)范Python代碼使用縮進(jìn)來確定代碼之間的邏輯關(guān)系和層次關(guān)系,縮進(jìn)指的是一行代碼之前的空白區(qū)域。Python中可以使用兩種方法來控制縮進(jìn),分別是Tab鍵和空格,其中空格是首選的縮進(jìn)方法,一般使用4個空格表示一級縮進(jìn)。Python縮進(jìn)不允許混合使用Tab鍵和空格??s進(jìn)后的代碼從屬于之上最近的一行非縮進(jìn)或非同等級別縮進(jìn)的代碼,示例代碼如下:ifTrue:print("True") else:print("False")2.1.2縮進(jìn)代碼縮進(jìn)量的不同會導(dǎo)致代碼語義的改變,Python語言要求同一代碼塊的每行代碼必須具有相同的縮進(jìn)量。程序中不允許出現(xiàn)無意義或不規(guī)范的縮進(jìn),否則運(yùn)行時會產(chǎn)生錯誤。示例代碼如下:ifTrue:print("Answer")print("True")else:print("Answer")print("False")#縮進(jìn)不一致,會導(dǎo)致運(yùn)行錯誤2.1.2縮進(jìn)
先定一個小目標(biāo)!2.1.3語句換行熟悉代碼格式,能夠歸納出語句換行的規(guī)范在Python中,如果一條語句過長而無法在一行內(nèi)顯示完整,那么可以將這條語句進(jìn)行換行以分成多行顯示,從而提高代碼的可讀性。Python官方建議一行代碼的長度不要超過79個字符,超過最好進(jìn)行換行顯示。Python中可以通過兩種方式進(jìn)行語句換行,一種方式是在一行代碼的末尾加上符號“\”,另一種方式是使用小括號包裹代碼。2.1.3語句換行使用符號“\”進(jìn)行換行時,“\”位于一行代碼的末尾,并會連接下面一行的代碼,構(gòu)成一個完整語義的語句。示例如下:side_01=3;side_02=4;side_03=5#使用\進(jìn)行換行result=side_01+side_02>side_03or\side_02+side_03>side_01or\side_01+side_03>side_022.1.3語句換行使用小括號進(jìn)行換行時,只需要將代碼全部放到小括號中,此時小括號包裹的代碼會被視為一個完整語義的語句,可以跨越多行顯示。示例如下:side_01=3;side_02=4;side_03=5#使用小括號進(jìn)行換行result=(side_01+side_02>side_03orside_02+side_03>side_01orside_01+side_03>side_02)2.1.3語句換行標(biāo)識符和關(guān)鍵字2.2
先定一個小目標(biāo)!熟悉標(biāo)識符的命名規(guī)則,能夠在程序中使用合法的標(biāo)識符2.2.1標(biāo)識符為了明確某處代碼使用的到底是哪個數(shù)據(jù)、代表的是哪一類信息,開發(fā)人員可以使用一些符號或名稱作為程序中同一個數(shù)據(jù)或同一類信息的標(biāo)識,這些符號或名稱就是標(biāo)識符,比如后面章節(jié)提到的變量名、函數(shù)名、類名等。2.2.1標(biāo)識符凡事無規(guī)矩不成方圓。Python中的標(biāo)識符在命名時,需要遵守一定的命名規(guī)則,具體如下。Python中的標(biāo)識符由字母、數(shù)字或下畫線組成,且不能以數(shù)字開頭。Python中的標(biāo)識符區(qū)分大小寫。例如,andy和Andy是不同的標(biāo)識符。Python不允許開發(fā)人員使用關(guān)鍵字作為標(biāo)識符。2.2.1標(biāo)識符student
#全部是小寫字母LEVEL#全部是大寫字母Flower#大寫字母、小寫字母混合Flower123#大寫字母、小寫字母、數(shù)字混合Flower_123#大寫字母、小寫字母、數(shù)字、下畫線混合不合法的標(biāo)識符,具體如下:2.2.1標(biāo)識符from#12 #標(biāo)識符不能包含#符號2ndObj
#標(biāo)識符不能以數(shù)字開頭if #if是關(guān)鍵字,不能作為標(biāo)識符Python對于標(biāo)識符的命名還有以下兩點建議。(1)見名知意。標(biāo)識符應(yīng)有具有明確的含義,盡量做到用戶看一眼便知道標(biāo)識符的意義。例如,使用name標(biāo)識姓名,使用student標(biāo)識學(xué)生。(2)命名格式要求。為區(qū)分程序中不同地方使用的標(biāo)識符,Python有一些約定俗成的命名格式規(guī)則,涵蓋了變量名、常量名、模塊名、函數(shù)名和類名,具體要求如下:變量名使用小寫的單個單詞或由下畫線連接的多個單詞,如name、native_place。常量名使用大寫的單個單詞或由下畫線連接的多個單詞,如ORDER_LIST_LIMIT、GAME_LEVEL。模塊名、函數(shù)名使用小寫的單個單詞或由下畫線連接的多個單詞,如low_with_under、generate_random_numbers。類名使用大寫字母開頭的單個或多個單詞,如Cat、CapWorld。2.2.1標(biāo)識符
先定一個小目標(biāo)!熟悉關(guān)鍵字,能夠列舉至少5個關(guān)鍵字2.2.2關(guān)鍵字2.2.2關(guān)鍵字關(guān)鍵字是Python已經(jīng)使用的且不允許開發(fā)人員重復(fù)定義的標(biāo)識符。Python中一共定義了35個關(guān)鍵字,這些關(guān)鍵字全部存儲在keyword模塊的變量kwlist中,通過查看變量kwlist可獲取Python中所有的關(guān)鍵字,示例如下:importkeywordprint(keyword.kwlist)2.2.2關(guān)鍵字Python中所有的關(guān)鍵字如下:FalseawaitelseimportpassNonebreakexceptinraiseTrueclassfinallyisreturnandcontinueforlambdatryasdeffromnonlocalwhileassertdelglobalnotwithasyncelififoryield2.2.2關(guān)鍵字Python中的每個關(guān)鍵字都有不同的作用,通過“help("關(guān)鍵字")”可以查看關(guān)鍵字的詳細(xì)信息。例如,查看關(guān)鍵字import的詳細(xì)信息,示例代碼如下:print(help("import")變量和數(shù)據(jù)類型2.3
先定一個小目標(biāo)!掌握變量的定義與使用,能夠熟練定義并使用變量訪問數(shù)據(jù)2.3.1變量2.3.1變量計算機(jī)語言中變量的概念源于數(shù)學(xué)。在數(shù)學(xué)中,變量指用拉丁字母表示的、值不固定的數(shù)據(jù)。在計算機(jī)語言中,變量指能存儲計算結(jié)果或表示值的抽象概念——程序在運(yùn)行期間用到的數(shù)據(jù)會被保存在計算機(jī)的內(nèi)存單元中,為了方便存取內(nèi)存單元中的數(shù)據(jù),Python使用標(biāo)識符來標(biāo)識不同的內(nèi)存單元,從而在程序中通過標(biāo)識符來引用和操作存儲在內(nèi)存單元中的數(shù)據(jù)。2.3.1變量以存儲數(shù)據(jù)15的變量和存儲數(shù)據(jù)20的變量為例,它們對應(yīng)的標(biāo)識符名稱分別為num和data,描述變量與內(nèi)存單元之間的關(guān)系。2.3.1變量標(biāo)識內(nèi)存單元的標(biāo)識符又稱為變量名,Python通過賦值運(yùn)算符“=”將內(nèi)存單元中存儲的數(shù)據(jù)與變量名建立聯(lián)系,即定義變量,具體語法格式如下:變量名=值當(dāng)定義了一個變量并將一個值賦給它時,Python會在內(nèi)存中為值分配一個合適大小的內(nèi)存單元,并將變量與內(nèi)存單元進(jìn)行關(guān)聯(lián)。例如,將內(nèi)存單元中存儲的值100與變量名data建立聯(lián)系,代碼如下:data=100
先定一個小目標(biāo)!了解常用的數(shù)據(jù)類型,能夠復(fù)述每種數(shù)據(jù)類型的特點2.3.2數(shù)據(jù)類型2.3.2數(shù)據(jù)類型根據(jù)數(shù)據(jù)存儲形式的不同,Python中常用的數(shù)據(jù)類型可以分為兩類,分別是數(shù)字類型和組合數(shù)據(jù)類型,其中組合數(shù)據(jù)類型相對復(fù)雜,包括字符串類型、列表類型、元組類型、集合類型、字典類型等。2.3.2數(shù)據(jù)類型1.數(shù)字類型數(shù)字類型用于表示不同種類的數(shù)值數(shù)據(jù),分為整型(int)、浮點型(float)、復(fù)數(shù)類型(complex)和布爾類型(bool),其中整型、浮點型和復(fù)數(shù)類型的數(shù)據(jù)分別對應(yīng)數(shù)學(xué)中的整數(shù)、小數(shù)和復(fù)數(shù);布爾類型比較特殊,用于表示真(True)或假(False)的邏輯值。數(shù)字類型的示例如下:整型:
0
101 -239浮點型:
3.14154.2E-10 -2.334E-9復(fù)數(shù)類型:3.12+1.23j
-1.23-93j布爾類型:True
False2.3.2數(shù)據(jù)類型2.字符串類型字符串用于表示文本數(shù)據(jù),由單引號、雙引號或者三引號包裹一系列字符。示例如下:'Python123¥' #使用單引號包裹"Python4*&%" #使用雙引號包裹'''Pythons1~(())''' #使用三引號包裹2.3.2數(shù)據(jù)類型3.列表類型列表可以保存任意數(shù)量、任意類型的元素,且這些元素可以被修改。Python中一般使用中括號“[]”創(chuàng)建列表,在中括號中可以放入多個元素,多個元素之間以逗號進(jìn)行分隔,示例如下:[1,2,'apple'] #這是一個列表2.3.2數(shù)據(jù)類型4.元組類型元組與列表的作用相似,它也可以保存任意數(shù)量、任意類型的元素,但是這些元素是不可以被修改的。Python中一般使用小括號“()”創(chuàng)建元組,在小括號中可以放入多個元素,多個元素之間以逗號分隔,示例如下:(1,2,'apple') #這是一個元組2.3.2數(shù)據(jù)類型5.集合類型集合與列表、元組類似,它也可以保存任意數(shù)量、任意類型的元素,但是這些元素之間沒有特定的順序,并且每個元素必須是唯一的。Python中一般使用大括號“{}”創(chuàng)建集合,在大括號中可以放入多個元素,多個元素之間以逗號分隔,示例如下:{'apple','orange',1} #這是一個集合2.3.2數(shù)據(jù)類型6.字典類型字典可以保存任意數(shù)量的元素,不過元素是“Key:Value”形式的鍵值對,鍵Key不能重復(fù)。Python中一般使用大括號“{}”創(chuàng)建字典,在大括號中可以放入多個元素,多個元素之間以逗號分隔,示例如下:"name":"張三","age":18}#這是一個字典多學(xué)一招:type()函數(shù)——查看變量的類型Python是一種動態(tài)類型語言,它在定義變量時不需要顯式指定具體的類型。Python解釋器會根據(jù)程序執(zhí)行時賦予變量的值自動確定變量的數(shù)據(jù)類型,可以通過type()函數(shù)查看變量所存儲數(shù)據(jù)的具體類型。例如,創(chuàng)建一個字典,通過type()函數(shù)查看這個字典的數(shù)據(jù)類型,具體代碼如下:dict_demo={"name":"zhangsan","age":18}print(type(dict_demo))#查看數(shù)據(jù)類型<class'dict'>
先定一個小目標(biāo)!掌握變量的輸入與輸出,能夠通過input()和print()函數(shù)實現(xiàn)輸入與輸出的功能2.3.3變量的輸入與輸出STEP012.3.3變量的輸入與輸出程序要實現(xiàn)人機(jī)交互功能,需能從輸入設(shè)備接收用戶輸入的數(shù)據(jù),也需要向顯示設(shè)備輸出數(shù)據(jù)。Python提供了input()函數(shù)和print()函數(shù)分別來實現(xiàn)數(shù)據(jù)的輸入與輸出。STEP012.3.3變量的輸入與輸出1.input()函數(shù)input()函數(shù)用于接收用戶從鍵盤輸入的數(shù)據(jù),返回一個字符串類型的數(shù)據(jù),其語法格式如下所示:prompt:用于設(shè)置接收用戶輸入時的提示信息,可以省略。input([prompt])語法格式2.3.3變量的輸入與輸出示例input()函數(shù)的用法,示例代碼如下:user_name=input('請輸入賬號:')#接收用戶輸入的賬號password=input('請輸入密碼:')#接收用戶輸入的密碼print('登錄成功!')STEP012.3.3變量的輸入與輸出2.print()函數(shù)print()函數(shù)用于向控制臺中輸出數(shù)據(jù),它可以輸出任何類型的數(shù)據(jù),其語法格式如下:*objects:表示輸出的數(shù)據(jù)。輸出多個數(shù)據(jù)時,數(shù)據(jù)之間需要用逗號分隔。sep:可選參數(shù),用于設(shè)定數(shù)據(jù)之間使用的分隔符,默認(rèn)值為空格。end:可選參數(shù),用于設(shè)定輸出結(jié)果以什么結(jié)尾,默認(rèn)值為換行符\n。file:可選參數(shù),表示數(shù)據(jù)要寫入的文件對象,默認(rèn)值為sys.stdout,表示標(biāo)準(zhǔn)輸出流,默認(rèn)情況下程序會將結(jié)果輸出到控制臺。flush:可選參數(shù),表示是否刷新標(biāo)準(zhǔn)輸出流,默認(rèn)值為False,表示不刷新。print(*objects,
sep='
',
end='\n',
file=None,
flush=False)語法格式2.3.3變量的輸入與輸出示例通過輸出個人基本信息的示例演示print()函數(shù)的用法,示例代碼如下:name='小明'print('姓名:',name)#輸出多個數(shù)據(jù),第一個是字符串,第二個是變量保存的數(shù)據(jù)print('年齡:22')
#輸出一個字符串類型的數(shù)據(jù)address='北京'print('地址:',address)#輸出多個數(shù)據(jù),第一個是字符串,第二個是變量保存的數(shù)據(jù)實訓(xùn)案例2.4
先定一個小目標(biāo)!2.4.1輸出購物小票根據(jù)任務(wù)描述實現(xiàn)案例:輸出購物小票2.4.1輸出購物小票購物小票又稱購物收據(jù),是指消費者購買商品時由商場或其他商業(yè)機(jī)構(gòu)提供給用戶的消費憑證。購物小票中一般會包含用戶購買的商品名稱、數(shù)量、單價及總金額等信息。2.4.1輸出購物小票本案例要求編寫代碼,依次接收用戶從鍵盤輸入的商品價格,并根據(jù)價格輸出購物小票內(nèi)容。
先定一個小目標(biāo)!2.4.2輸出植樹證書根據(jù)任務(wù)描述實現(xiàn)案例:輸出植樹證書螞蟻森林是支付寶客戶端發(fā)起“碳賬戶”的一款公益活動,用戶通過步行、地鐵出行、在線消費等行為,可在螞蟻森林中獲取能量,當(dāng)能量到達(dá)一定數(shù)值后,用戶可以在支付寶中申請一顆虛擬的樹,申請成功后會收到支付寶發(fā)放的一張植樹證書。植樹證書中包含申請日期、樹苗編號、種植地點等信息。2.4.2輸出植樹證書本案例要求編寫代碼,根據(jù)用戶輸入的昵稱和植物實現(xiàn)輸出植樹證書信息的功能。2.4.2輸出植樹證書數(shù)字類型2.52.5.1
整型
先定一個小目標(biāo)!掌握整型的定義,能夠正確定義并使用定義的整數(shù)整數(shù)類型(int)簡稱整型,它用于表示整數(shù),例如100、101、-100、-101等。Python中整型數(shù)據(jù)的大小沒有限制,只要計算機(jī)的內(nèi)存足夠大,用戶就無須考慮內(nèi)存溢出問題。2.5.1
整型整型常用的計數(shù)方式有4種,分別是二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制,默認(rèn)的計數(shù)方式為十進(jìn)制,其中二進(jìn)制數(shù)以“0B”或“0b”開頭,八進(jìn)制數(shù)以數(shù)字“0o”或“0O”開頭,十六進(jìn)制數(shù)以“0x”或“0X”開頭。接下來,分別以4種計數(shù)方式表示整型數(shù)據(jù)5,示例如下:5#十進(jìn)制數(shù)0b101#二進(jìn)制數(shù)0o5#八進(jìn)制數(shù)0x5#十六進(jìn)制數(shù)2.5.1
整型為了方便用戶使用不同進(jìn)制的數(shù)據(jù),Python中提供了一些用于轉(zhuǎn)換數(shù)據(jù)進(jìn)制的函數(shù),分別是bin()、oct()、int()、hex(),這些函數(shù)都可以將一種進(jìn)制的整型數(shù)據(jù)轉(zhuǎn)換為其他進(jìn)制的的整型數(shù)據(jù)。2.5.1
整型運(yùn)算符說明bin(x)將x轉(zhuǎn)換為二進(jìn)制數(shù)oct(x)將x轉(zhuǎn)換為八進(jìn)制數(shù)int(x)將x轉(zhuǎn)換為十進(jìn)制數(shù)hex(x)將x轉(zhuǎn)換為十六進(jìn)制數(shù)各函數(shù)的用法,示例代碼如下:2.5.1
整型decimal=10#十進(jìn)制數(shù)bin_num=0b1010#二進(jìn)制數(shù)print(bin(decimal))#將十進(jìn)制數(shù)10轉(zhuǎn)換為二進(jìn)制數(shù)print(oct(decimal))#將十進(jìn)制數(shù)10轉(zhuǎn)換為八進(jìn)制數(shù)print(int(bin_num))#將二進(jìn)制數(shù)0b1010轉(zhuǎn)換為十進(jìn)制數(shù)print(hex(decimal))#將十進(jìn)制數(shù)10轉(zhuǎn)換為十六進(jìn)制數(shù)2.5.2浮點型
先定一個小目標(biāo)!掌握浮點數(shù)類型的定義,能夠正確定義并使用定義的浮點數(shù)2.5.2浮點型浮點型(float)用于表示實數(shù),實數(shù)由整數(shù)部分、小數(shù)點和小數(shù)部分組成,如3.1415926、0.90、-10.0。Python中一般可以直接使用小數(shù)點的形式表示浮點型數(shù)據(jù),示例如下:1.099991.2021314.15926-2.36-10.0632-100.03當(dāng)需要表示較大或較小的實數(shù)時,直接使用小數(shù)點形式會出現(xiàn)非常冗長的數(shù)字位數(shù)。為了簡化這種表示方式,可以使用科學(xué)記數(shù)法表示浮點型數(shù)據(jù)。2.5.2浮點型科學(xué)記數(shù)法會把一個數(shù)表示成a與10的n次冪相乘的形式,數(shù)學(xué)中科記數(shù)法的格式:a×10n(1≤|a|<10,n∈N)Python使用字母e或E表示底數(shù)10,示例如下:-3.14e10
#相當(dāng)于-3.14×,結(jié)果為-314000000003.14e-10
#相當(dāng)于3.14×,結(jié)果為0.0000000003142.5.2浮點型Python中的浮點型是雙精度的,每個浮點型數(shù)據(jù)占8個字節(jié)(即64位)的存儲空間。這種雙精度的浮點型數(shù)據(jù)遵守IEEE754標(biāo)準(zhǔn),其中52位用于存儲尾數(shù),11位用于存儲階碼,剩余1位用于存儲符號。Python中浮點型數(shù)據(jù)的取值范圍為-1.8e308~1.8e308,若超出這個范圍,Python會將數(shù)據(jù)視為無窮大(inf)或無窮小(-inf)。示例如下:print(3.14e500)print(-3.14e500)
先定一個小目標(biāo)!掌握復(fù)數(shù)類型的定義,能夠正確定義并使用定義的復(fù)數(shù)2.5.3復(fù)數(shù)類型復(fù)數(shù)類型(complex)用于表示復(fù)數(shù),復(fù)數(shù)的一般形式為real+imagj或real+imagJ,其中real是實部,表示復(fù)數(shù)的實數(shù)部分;imag是虛部,表示復(fù)數(shù)的虛數(shù)部分;j或J是虛數(shù)單位。注意,實部可以直接省略;虛部后面必須有虛數(shù)單位,虛數(shù)單位不能單獨存在。示例如下:complex_one=1+2j
#實部為1,虛部為2complex_two=2j#虛部為22.5.3復(fù)數(shù)類型通過complex()函數(shù)創(chuàng)建復(fù)數(shù),該函數(shù)的使用方式為complex(實部,虛部),我們需要根據(jù)需求傳入相應(yīng)的實部和虛部。若是沒有傳入虛部,則虛部默認(rèn)為0。示例如下:complex_one=complex(3,2)#創(chuàng)建復(fù)數(shù),分別傳入實部和虛部print(complex_one)complex_two=complex(5)#創(chuàng)建復(fù)數(shù),只傳入實部print(complex_two)通過real和imag屬性可以單獨獲取復(fù)數(shù)的實部和虛部,具體使用方式為“復(fù)數(shù).real”和“復(fù)數(shù).imag”,示例如下:complex_one=1+2jprint(complex_one.real)
#獲取復(fù)數(shù)實部print(complex_one.imag)#獲取復(fù)數(shù)虛部2.5.3復(fù)數(shù)類型
先定一個小目標(biāo)!掌握布爾類型的使用,能夠正確使用布爾類型2.5.4布爾類型2.5.4布爾類型布爾類型用于表示邏輯判斷的真或假,真對應(yīng)的取值是True,假對應(yīng)的取值是False。Python中,任何數(shù)據(jù)都可以進(jìn)行邏輯判斷后得到一個布爾值,布爾值為False的常見數(shù)據(jù)如下:None;任何值為0的數(shù)字類型,如0、0.0、0j;任何空的組合數(shù)據(jù)類型,如空字符串、空元組、空列表、空集合、空字典;2.5.4布爾類型None是一個特殊的空值,也就是說沒有值。除了上述列舉的數(shù)據(jù)外,其他數(shù)據(jù)的布爾值一般都是True。Python中可以使用bool()函數(shù)檢測數(shù)據(jù)的布爾值,示例如下:print(bool(None))#檢測空值None的布爾值print(bool(0))#檢測整型數(shù)據(jù)0的布爾值print(bool(3.1415))#檢測浮點型數(shù)據(jù)3.1415的布爾值print(bool(0j))#檢測復(fù)數(shù)類型數(shù)據(jù)0j的布爾值print(bool('hello'))#檢測字符串'hello'的布爾值print(bool(1))#檢測整型數(shù)據(jù)1的布爾值
先定一個小目標(biāo)!掌握數(shù)字類型的轉(zhuǎn)換,能夠根據(jù)需要進(jìn)行數(shù)字類型的轉(zhuǎn)換2.5.5數(shù)字類型轉(zhuǎn)換Python內(nèi)置了一系列可強(qiáng)制轉(zhuǎn)換數(shù)據(jù)類型的函數(shù),使用這些函數(shù)可將目標(biāo)數(shù)據(jù)轉(zhuǎn)換為指定的類型,其中用于轉(zhuǎn)換數(shù)字類型的函數(shù)有int()、float()、complex()。2.5.5數(shù)字類型轉(zhuǎn)換函數(shù)說明int(x[,base])將x轉(zhuǎn)換為整型數(shù)據(jù),x的值可以是整型、浮點型、布爾類型的數(shù)據(jù),或者符合整型規(guī)范的字符串;base表示進(jìn)制數(shù),它的取值為2到36之間的整數(shù)。如果沒有使用base指定進(jìn)制數(shù),則會將x轉(zhuǎn)換為十進(jìn)制整數(shù)float(x)將x轉(zhuǎn)換為一個浮點型數(shù)據(jù),x的值可以是整型、浮點型、布爾類型的數(shù)據(jù),或者符合浮點型規(guī)范的字符串complex(x)將x轉(zhuǎn)換為復(fù)數(shù)類型數(shù)據(jù),x的值可以是任意數(shù)字類型的數(shù)據(jù),或者符合復(fù)數(shù)類型規(guī)范的字符串2.5.5數(shù)字類型轉(zhuǎn)換需要注意的是,當(dāng)通過int()函數(shù)將浮點型數(shù)據(jù)轉(zhuǎn)換為整型數(shù)據(jù)時只保留整數(shù)部分,舍去小數(shù)部分。另外,通過int()函數(shù)將布爾類型的數(shù)據(jù)轉(zhuǎn)換為整型數(shù)據(jù)時,會將True轉(zhuǎn)換成1,F(xiàn)alse轉(zhuǎn)換成0。2.5.5數(shù)字類型轉(zhuǎn)換各函數(shù)的使用示例如下。num_one=2.0print(int(num_one))#將浮點型數(shù)據(jù)轉(zhuǎn)換為整型數(shù)據(jù)num_two=5print(float(num_two))#將整型數(shù)據(jù)轉(zhuǎn)換為浮點型數(shù)據(jù)print(complex(num_one))#將浮點數(shù)數(shù)據(jù)轉(zhuǎn)換為復(fù)數(shù)類型的數(shù)據(jù)words_one='10.01'print(float(words_one))#將字符串類型的數(shù)據(jù)轉(zhuǎn)換為浮點型數(shù)據(jù)words_two='10'print(int(words_two))#將字符串類型的數(shù)據(jù)轉(zhuǎn)換為整型數(shù)據(jù)words_three='1+2j'print(complex(words_three))#將字符串類型的數(shù)據(jù)轉(zhuǎn)換為復(fù)數(shù)類型的數(shù)據(jù)2.5.5數(shù)字類型轉(zhuǎn)換注意,如果字符串中的所有內(nèi)容是除十進(jìn)制以外其他進(jìn)制的數(shù)據(jù),那么使用int()函數(shù)將該字符串轉(zhuǎn)換成整型數(shù)據(jù)時,需要使用base指定要轉(zhuǎn)換的進(jìn)制。示例如下:words_four='0b1010'#字符串中包含二進(jìn)制數(shù)print(int(words_four,base=2))#將字符串轉(zhuǎn)換為整型數(shù)據(jù),指定二進(jìn)制運(yùn)算符2.62.6.1
算術(shù)運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用算術(shù)運(yùn)算符算術(shù)運(yùn)算符主要用于執(zhí)行基本的數(shù)學(xué)運(yùn)算,比如加法、減法、乘法、除法等,Python中的算術(shù)運(yùn)算符包括+、-、*、/、//、%和**,它們都是雙目運(yùn)算符,能夠?qū)蓚€操作數(shù)進(jìn)行相應(yīng)的數(shù)學(xué)運(yùn)算。2.6.1
算術(shù)運(yùn)算符下面以a=2,b=8為例,介紹算術(shù)運(yùn)算符的功能說明及示例。2.6.1
算術(shù)運(yùn)算符運(yùn)算符說明示例+加:使兩個操作數(shù)相加,獲取操作數(shù)的和a+b,結(jié)果為8-減:使兩個操作數(shù)相減,獲取操作數(shù)的差a–b,結(jié)果為-2*乘:使兩個操作數(shù)相乘,獲取操作數(shù)的積a*b,結(jié)果為15/除:使兩個操作數(shù)相除,獲取操作數(shù)的商a/b,結(jié)果為0.6//整除:使兩個操作數(shù)相除,獲取商的整數(shù)部分a//b,結(jié)果為0%取余:使兩個操作數(shù)相除,獲取余數(shù)a%b,結(jié)果為3**冪:使兩個操作數(shù)進(jìn)行冪運(yùn)算,獲取a的b次冪a**b,結(jié)果為243Python中的算術(shù)運(yùn)算符既支持對相同類型的數(shù)值進(jìn)行運(yùn)算,也支持對不同類型的數(shù)值進(jìn)行混合運(yùn)算。在進(jìn)行混合運(yùn)算時Python會強(qiáng)制將數(shù)值的類型進(jìn)行類型轉(zhuǎn)換,類型轉(zhuǎn)換遵循如下原則:(1)整型與浮點型進(jìn)行混合運(yùn)算時,將整型轉(zhuǎn)化為浮點型。(2)其他類型與復(fù)數(shù)運(yùn)算時,將其他類型轉(zhuǎn)換為復(fù)數(shù)類型。使用整型數(shù)據(jù)分別與浮點型和復(fù)數(shù)類型的數(shù)據(jù)進(jìn)行運(yùn)算,示例如下:2.6.1
算術(shù)運(yùn)算符print(10/2.0) #整型會轉(zhuǎn)換為浮點型的數(shù)據(jù)10.0print(10-(3+5j)) #整型會轉(zhuǎn)換為復(fù)數(shù)類型的數(shù)據(jù)10+0j2.6.2賦值運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用賦值運(yùn)算符賦值運(yùn)算符用于將一個表達(dá)式或值賦值給變量。最簡單的賦值運(yùn)算符是=,例如,使用賦值運(yùn)算符=將整數(shù)3賦值給變量num,示例如下:2.6.2賦值運(yùn)算符num=3賦值運(yùn)算符=允許同時為多個變量賦值,既可以為多個變量賦同一個值,也可以賦不同的值,示例如下:x=y=z=1#變量x、y、z均賦值為1a,b=1,2
#變量a賦值為1,變量b賦值為2注意,當(dāng)使用賦值運(yùn)算符=同時為多個變量賦不同的值時,賦值運(yùn)算符=左右兩邊的變量和值的數(shù)量必須保持一致,否則運(yùn)行后會出現(xiàn)錯誤。2.6.2賦值運(yùn)算符Python還有一種復(fù)合賦值運(yùn)算符,復(fù)合賦值運(yùn)算符同時具備算術(shù)運(yùn)算和賦值兩項功能。下面以變量num為例,介紹Python復(fù)合賦值運(yùn)算符的功能說明及示例。2.6.2賦值運(yùn)算符運(yùn)算符說明示例+=將右邊的值與左邊變量相加,并將結(jié)果賦給左邊變量num+=2等價于num=num+2-=將右邊的值與左邊變量相減,并將結(jié)果賦給左邊變量num-=2等價于num=num-2*=將右邊的值與左邊變量相乘,并將結(jié)果賦給左邊變量num*=2等價于num=num*2/=將左邊的變量除以右邊的值,并將結(jié)果賦給左邊變量num/=2等價于num=num/2//=將左邊的變量整除右邊的值,并將結(jié)果賦給左邊變量num//=2等價于num=num//2%=將左邊的變量對右邊的值取模,并將結(jié)果賦給左邊變量num%=2等價于num=num%2**=將左邊的變量提升到右邊值的冪次方,并將結(jié)果賦給左邊變量num**=2等價于num=num**2Python3.8中新增了一個賦值運(yùn)算符——海象運(yùn)算符“:=”,該運(yùn)算符用于在表達(dá)式內(nèi)部同時為變量賦值和使用變量,因其符號形似海象的眼睛和長牙而得名。海象運(yùn)算符的用法示例如下:2.6.2賦值運(yùn)算符num_one=1result=num_one+(num_two:=2) #使用海象運(yùn)算符為變量num_two賦值print(result)2.6.3比較運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用比較運(yùn)算符比較運(yùn)算符也叫關(guān)系運(yùn)算符,用于比較兩邊操作數(shù)之間的關(guān)系。Python中的比較運(yùn)算符包括==、!=、>、<、>=、<=,它們通常用于布爾測試,測試的結(jié)果只能是True或False。下面以x=2,y=3為例,介紹比較運(yùn)算符的功能說明及示例。2.6.2賦值運(yùn)算符運(yùn)算符說明示例==比較兩個操作數(shù)是否相等,如果相等返回Truex==y,返回False!=比較兩個操作數(shù)是否不相等,如果不相等返回Truex!=y,返回True>比較左操作數(shù)是否大于右操作數(shù),如果大于返回Truex>y,返回False<比較左操作數(shù)是否小于右操作數(shù),如果小于返回Truex<y,返回True>=比較左操作數(shù)是否大于或等于右操作數(shù),如果大于或等于返回Truex>=y,返回False<=比較左操作數(shù)是否小于或等于右操作數(shù),如果小于或等于返回Truex<=y,返回True2.6.4邏輯運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用邏輯運(yùn)算符邏輯運(yùn)算符可以把多個條件按照邏輯進(jìn)行連接,變成更復(fù)雜的條件。Python中分別使用or、and、not這三個關(guān)鍵字作為邏輯運(yùn)算符,其中or與and為雙目運(yùn)算符,用于對兩個操作數(shù)進(jìn)行邏輯或、邏輯與運(yùn)算;not為單目運(yùn)算符,用于對一個操作數(shù)進(jìn)行邏輯非運(yùn)算。下面以x=10,y=20為例,介紹邏輯運(yùn)算符的功能說明以及示例。2.6.2賦值運(yùn)算符運(yùn)算符說明示例and若兩個操作數(shù)的布爾值均為True,則返回右操作數(shù),運(yùn)算結(jié)果的布爾值為True;若兩個操作數(shù)的布爾值均為False,則會返回左操作數(shù),運(yùn)算結(jié)果的布爾值為False;若兩個操作數(shù)的布爾值有一個為False,則會返回布爾值為Fals的操作數(shù)xandy的結(jié)果為20or若左操作數(shù)的布爾值為True,則返回左操作數(shù),否則返回右操作數(shù)xory的結(jié)果為10not若操作數(shù)x的布爾值為True,則結(jié)果為Falsenotx的結(jié)果為False2.6.5邏輯運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用成員運(yùn)算符成員運(yùn)算符用于檢測給定數(shù)據(jù)是否存在于字符串、列表、元組、集合、字典等序列中,關(guān)于它們的介紹如下。in:如果指定數(shù)據(jù)在序列中返回True,否則返回False。notin:如果指定數(shù)據(jù)不在序列中返回True,否則返回False。成員運(yùn)算符的用法示例如下:2.6.5邏輯運(yùn)算符x='Python'y='P'print(yinx)print(ynotinx)2.6.6位運(yùn)算符
先定一個小目標(biāo)!掌握運(yùn)算符的使用,能夠正確使用位運(yùn)算符位運(yùn)算符用于對操作數(shù)的二進(jìn)制位進(jìn)行邏輯運(yùn)算,操作數(shù)必須為整數(shù)。Python中一共有六個位運(yùn)算符,分別是<<、>>、&、|、^、~。2.6.5位運(yùn)算符運(yùn)算符說明<<操作數(shù)按位左移>>操作數(shù)按位右移&左操作數(shù)與右操作數(shù)執(zhí)行按位與運(yùn)算|左操作數(shù)與右操作數(shù)執(zhí)行按位或運(yùn)算^左操作數(shù)與右操作數(shù)執(zhí)行按位異或運(yùn)算~操作數(shù)按位取反1.按位左移運(yùn)算符(<<)按位左移是指將二進(jìn)制形式操作數(shù)的所有位向左移動指定的位數(shù),移出位被丟棄,移入位補(bǔ)0。以十進(jìn)制的整數(shù)9為例,當(dāng)執(zhí)行9<<4運(yùn)算時,首先會將9自動轉(zhuǎn)換為二進(jìn)制數(shù)00001001,然后將二進(jìn)制數(shù)00001001的所有位向左移動4位。2.6.5位運(yùn)算符左移n位相當(dāng)于操作數(shù)乘以2的n次方,根據(jù)此原理可借助乘法運(yùn)算符實現(xiàn)按位左移操作。2.按位右移運(yùn)算符(>>)按位右移是指將二進(jìn)制形式操作數(shù)的所有位向右移動指定的位數(shù),移出位被丟棄,移入位補(bǔ)0。以十進(jìn)制的整數(shù)8為例,當(dāng)執(zhí)行8>>2運(yùn)算時,首先會將8自動轉(zhuǎn)換為二進(jìn)制數(shù)00001000,然后將二進(jìn)制數(shù)00001000的所有位向右移動2位。2.6.5位運(yùn)算符右移n位相當(dāng)于操作數(shù)除以2的n次方并向下取整,根據(jù)此原理可借助除法運(yùn)算符實現(xiàn)右移功能。3.按位與運(yùn)算符(&)按位與是指將參與運(yùn)算的兩個操作數(shù)對應(yīng)的二進(jìn)制位進(jìn)行邏輯與操作。當(dāng)對應(yīng)的兩個二進(jìn)制位均為1時,結(jié)果位就為1,否則為0。以十進(jìn)制的整數(shù)9和3為例,當(dāng)執(zhí)行9&3運(yùn)算時,首先會將9和3自動轉(zhuǎn)換為二進(jìn)制數(shù)00001001和00000011,然后將二進(jìn)制數(shù)00001001和00000011的對應(yīng)位進(jìn)行邏輯與操作。2.6.5位運(yùn)算符4.按位或運(yùn)算符(|)按位或是指將參與運(yùn)算的兩個操作數(shù)對應(yīng)的二進(jìn)制位進(jìn)行邏輯或操作。若對應(yīng)的兩個二進(jìn)制位有一個為1時,結(jié)果位就為1,否則為0。若參與運(yùn)算的操作數(shù)為負(fù)數(shù),則參與運(yùn)算的兩個操作數(shù)均以補(bǔ)碼出現(xiàn)。2.6.5位運(yùn)算符5.按位異或運(yùn)算符(^)按位異或是指將參與運(yùn)算的兩個操作數(shù)對應(yīng)的二進(jìn)制位進(jìn)行異或操作。當(dāng)對應(yīng)的兩個二進(jìn)制位中有一個為1,另一個為0時,結(jié)果位為1,否則結(jié)果位為0。2.6.5位運(yùn)算符6.按位取反運(yùn)算符(~)按位取反是指將二進(jìn)制的每一位進(jìn)行取反,0取反為1,1取反為0。按位取反操作首先會獲取這個數(shù)的補(bǔ)碼,然后對補(bǔ)碼進(jìn)行取反,最后將取反結(jié)果轉(zhuǎn)換為原碼。例如,對9進(jìn)行按位取反的運(yùn)算過程如下。①獲取補(bǔ)碼。9的二進(jìn)制數(shù)是00001001,因為9屬于正數(shù),計算機(jī)中正數(shù)的原碼、反碼和補(bǔ)碼相等,所以9的補(bǔ)碼仍然為00001001。②取反操作。對9的補(bǔ)碼00001001進(jìn)行取反操作,即0變?yōu)?,1變?yōu)?,取反后結(jié)果為11110110。③轉(zhuǎn)換原碼。將11110110轉(zhuǎn)換為原碼時,轉(zhuǎn)換規(guī)則為符號位不變,其他位取反,末位加一,經(jīng)過一系列操作后會得到原碼。因此,11110110再次取反后的結(jié)果為10001001,之后末位加一后得到的結(jié)果為10001010,即-10。2.6.5位運(yùn)算符正數(shù)9按位取反的計算過程如圖所示。2.6.5位運(yùn)算符2.6.7運(yùn)算符優(yōu)先級
先定一個小目標(biāo)!掌握運(yùn)算符優(yōu)先級,能夠在數(shù)值運(yùn)算中正確使用運(yùn)算符Python支持使用多個不同的運(yùn)算符連接簡單表達(dá)式實現(xiàn)相對復(fù)雜的功能,為了避免含有多個運(yùn)算符的表達(dá)式出現(xiàn)歧義,Python為每種運(yùn)算符都設(shè)定了優(yōu)先級。2.6.7運(yùn)算符優(yōu)先級Python中運(yùn)算符的優(yōu)先級從高到低如表所示。2.6.7運(yùn)算符優(yōu)先級運(yùn)算符說明**冪運(yùn)算符*、/、%、//乘法運(yùn)算符、除法運(yùn)算符、取模運(yùn)算符、整除運(yùn)算符+、-加法運(yùn)算符、減法運(yùn)算符>>、<<按位右移、按位左移&按位與^、|按位異或、按位或==、!=、>=、>、<=、<比較運(yùn)算符in、notin成員運(yùn)算符not、and、or邏輯運(yùn)算符+=,-=,*=,/=,//=,%=,**=復(fù)合賦值運(yùn)算符=賦值運(yùn)算符**冪運(yùn)算符*、/、%、//乘法運(yùn)算符、除法運(yùn)算符、取模運(yùn)算符、整除運(yùn)算符+、-加法運(yùn)算符、減法運(yùn)算符如果表達(dá)式中包含小括號,那么解釋器會先執(zhí)行小括號包裹的子表達(dá)式。示例代碼如下:2.6.7運(yùn)算符優(yōu)先級a=20b=2c=15result_01=(a-b)+c
#先執(zhí)行小括號中的表達(dá)式,再執(zhí)行加法運(yùn)算result_02=a/b%c #先執(zhí)行除法運(yùn)算,再執(zhí)行取余運(yùn)算result_03=c**b*a
#先執(zhí)行冪運(yùn)算,再執(zhí)行乘法運(yùn)算print(result_01)print(result_02)print(result_03)實訓(xùn)案例2.7
先定一個小目標(biāo)!根據(jù)任務(wù)描述實現(xiàn)案例:間隔時間計算器2.7.1間隔
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力工程勞務(wù)分包合同樣本
- 重型廢鋼采購協(xié)議
- 代理記賬與辦公自動化合同
- 每月服務(wù)費用合同
- 個人職業(yè)操守保證宣言
- 工程承包合同樣本
- 網(wǎng)絡(luò)運(yùn)維服務(wù)協(xié)議
- 房屋交易合同說明
- 招標(biāo)代理機(jī)構(gòu)比選評價
- 嚴(yán)守保密紀(jì)律忠誠使命擔(dān)當(dāng)
- GB/T 39604-2020社會責(zé)任管理體系要求及使用指南
- 加油站網(wǎng)架吊裝方案
- 幼兒園主題教育活動設(shè)計與實施課件
- 實驗室生物安全程序文件
- 一年級上冊數(shù)學(xué)解決問題50道【綜合題】
- 拖車方案、拖車服務(wù)質(zhì)量控制要點、拖車應(yīng)對措施及供應(yīng)保證措施
- 幼兒園:先進(jìn)工作者評比標(biāo)準(zhǔn)
- (課件)肝性腦病
- DB33T 904-2021 公路軟土地基路堤設(shè)計規(guī)范
- 口腔外科:牽張成骨在口腔頜面外科中的應(yīng)用課件
- SPC培訓(xùn)資料課件
評論
0/150
提交評論