Python快速編程入門(第3版) 課件全套 第1-11章 Python概述-飛機大戰(zhàn)_第1頁
Python快速編程入門(第3版) 課件全套 第1-11章 Python概述-飛機大戰(zhàn)_第2頁
Python快速編程入門(第3版) 課件全套 第1-11章 Python概述-飛機大戰(zhàn)_第3頁
Python快速編程入門(第3版) 課件全套 第1-11章 Python概述-飛機大戰(zhàn)_第4頁
Python快速編程入門(第3版) 課件全套 第1-11章 Python概述-飛機大戰(zhàn)_第5頁
已閱讀5頁,還剩1165頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第1章Python概述《Python快速編程入門(第3版))》學習目標/Target了解Python語言,能夠說出Python語言的發(fā)展歷程以及特點熟悉Python程序的運行方式,能夠熟練通過交互式和文件式運行Python程序了解常用的開發(fā)工具,能夠說出常用開發(fā)工具的特點掌握Python解釋器的安裝方式,能夠獨立在計算機中安裝Python解釋器學習目標/Target掌握模塊的安裝方式,能夠通過pip工具安裝所需的模塊掌握模塊的導入與使用,能夠在程序中熟練導入并使用模塊掌握PyCharm的使用,能夠使用PyCharm編寫并運行代碼掌握PyCharm的下載與安裝,能夠獨立在計算機中安裝PyCharm工具章節(jié)概述/SummaryPython語言自誕生以來,因其具有簡潔優(yōu)美的語法、良好的開發(fā)效率、強大的生態(tài)系統(tǒng)等特點,迅速在編程領(lǐng)域占據(jù)一席之地,成為當前備受矚目的熱門編程語言。Python領(lǐng)域流傳著這樣一句話:“人生苦短,我用Python?!?,表達了人們對這門語言的高度認可。下面我們一起開啟Python學習之旅吧!目錄/Contents010203認識PythonPython解釋器的安裝與程序的運行Python開發(fā)工具04Python模塊認識Python1.1

先定一個小目標!了解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ā)布

先定一個小目標!1.1.2Python的特點了解Python語言,能夠說出Python語言的特點1.1.2Python的特點無縫銜接單元測試VS優(yōu)點簡潔語法優(yōu)美簡單易學開源可移植性好擴展性好類庫豐富通用靈活良好的中文支持執(zhí)行效率不夠高。在執(zhí)行相同功能的程序時,Python程序沒有C++程序、Java程序高效,這是因為Python解釋器需要逐行將代碼翻譯成計算機能夠理解的機器語言,翻譯過程是非常耗時的。缺點Python解釋器的安裝與程序的運行1.2

先定一個小目標!掌握Python解釋器的安裝方式,能夠獨立在計算機中安裝Python解釋器1.2.1安裝Python解釋器Python程序的執(zhí)行需要借助Python解釋器完成,只有在計算機中安裝Python解釋器并配置好Python開發(fā)環(huán)境后,開發(fā)人員才可以開發(fā)程序,并通過不同方式運行程序。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后進入SetupProgress界面。1.2.1安裝Python解釋器STEP05安裝Python解釋器安裝完成后會自動進入Setupwassuccessful界面。1.2.1安裝Python解釋器STEP06安裝Python解釋器在計算機的開始菜單中搜索Python,找到并單擊Python3.11(64-bit)打開Python解釋器窗口。1.2.1安裝Python解釋器STEP06安裝Python解釋器用戶也可以在命令窗口中進入Python環(huán)境,具體操作為:打開命令窗口,在命令窗口的提示符“>>>”后輸入“python”,按下回車鍵后即可進入Python環(huán)境。1.2.1安裝Python解釋器多學一招:手動配置環(huán)境變量若Python解釋器安裝完成后,在命令窗口輸入“python”提示“python不是內(nèi)部或外部命令,也不是可運行的程序或批處理文件?!?,說明系統(tǒng)未能搜索到Python解釋器的安裝路徑,此時可以手動為Python配置環(huán)境變量,以解決此問題。多學一招:手動配置環(huán)境變量環(huán)境變量(enviromentvariables)一般是指在操作系統(tǒng)中用來指定操作系統(tǒng)運行環(huán)境的一些參數(shù),如臨時文件夾位置和系統(tǒng)文件夾位置等。在向Windows和DOS操作系統(tǒng)中搭建開發(fā)環(huán)境時常常需要配置環(huán)境變量path,以便系統(tǒng)在運行一個程序時可以獲取到程序所在的完整路徑。若配置了環(huán)境變量,系統(tǒng)除了在當前目錄下尋找指定程序,還會到path變量所指定的路徑中查找程序。STEP01打開系統(tǒng)屬性窗口右鍵單擊“計算機”,在彈出的菜單中單擊“屬性”選項打開系統(tǒng)窗口,單擊該窗口左側(cè)選項列表中的“高級系統(tǒng)設(shè)置”,打開系統(tǒng)屬性窗口。多學一招:手動配置環(huán)境變量STEP02打開環(huán)境變量窗口單擊“環(huán)境變量”按鈕,打開環(huán)境變量窗口。多學一招:手動配置環(huán)境變量STEP03編輯環(huán)境變量對話框在“系統(tǒng)變量”列表中找到環(huán)境變量“Path”并雙擊,打開編輯環(huán)境變量對話框。多學一招:手動配置環(huán)境變量STEP04添加Python安裝路徑單擊“新建”按鈕,輸入Python解釋器的安裝路徑,本書使用的安裝路徑是C:\Users\itcast\AppData\Local\Programs\Python\Python311。多學一招:手動配置環(huán)境變量STEP05STEP05單擊“確定”按鈕,關(guān)閉編輯環(huán)境變量對話框,完成環(huán)境變量的配置。

先定一個小目標!熟悉Python程序的運行方式,能夠熟練通過交互式和文件式運行Python程序1.2.2Python程序的運行方式Python程序的運行方式有兩種,分別是交互式和文件式。交互式指Python解釋器逐行接收Python代碼并即時響應(yīng);文件式也稱批量式,指先將Python代碼保存在后綴名為.py的文件中,再啟動Python解釋器批量運行代碼。1.2.2Python程序的運行方式STEP01打開命令窗口進入Python環(huán)境,在命令提示符“>>>”的后面輸入如下一行代碼:1.2.2Python程序的運行方式print("紙上得來終覺淺,絕知此事要躬行。")按下回車鍵,命令窗口立刻在提示符的下一行輸出了運行結(jié)果。運行結(jié)果如下所示:紙上得來終覺淺,絕知此事要躬行。STEP011.創(chuàng)建一個文本文件,在該文件中寫入一行Python代碼,具體內(nèi)容為print("紙上得來終覺淺,絕知此事要躬行。")2.另存文件時將文件的名稱設(shè)置為hello,編碼方式設(shè)置為UTF-8,文件的后綴名修改為.py。3.在hello.py文件所在路徑下同時按下Shift鍵和鼠標右鍵,彈出右鍵菜單,在右鍵菜單列表中單擊“在此處打開命令窗口”選項,打開命令窗口。4.在命令窗口的命令提示符“>”后輸入命令“pythonhello.py”,按下回車鍵后運行hello.py文件,之后在提示符的下一行輸出了運行結(jié)果。1.2.2Python程序的運行方式Python開發(fā)工具1.3

先定一個小目標!了解常用的開發(fā)工具,能夠說出常用開發(fā)工具的特點1.3.1Python程序的運行方式1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。PyCharm是一款強大且流行的Python集成開發(fā)環(huán)境,它提供了一般集成開發(fā)環(huán)境的功能,比如代碼編輯、語法高亮、項目管理、代碼跳轉(zhuǎn)、智能提示、調(diào)試、單元測試、版本控制等,使得程序的編寫、運行、測試等過程能在一個環(huán)境中完成,非常適合開發(fā)大型的項目。VisualStudioCodeSublimeTextJupyterNotebook1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。SublimeText是一款輕量級但功能強大的文本編輯器,它不僅擁有豐富的功能,還支持多種編程語言,并且具備自己的包管理器。開發(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ù)學方程、可視化和Markdown等功能,用戶可以在一個文檔中進行編寫代碼、編寫數(shù)學公式、編寫文檔、運行代碼、可視化等一些操作。此外,JupyterNotebook可以運行多種編程語言,包括但不限于Python,它非常適合數(shù)據(jù)科學、機器學習和教育領(lǐng)域的開發(fā)和演示。VisualStudioCodeJupyterNotebookSublimeText1.3.1常用的開發(fā)工具PyCharmAnaconda無縫銜接單元測試常用的開發(fā)工具有PyCharm、SublimeText、VisualStudioCode、JupyterNotebook、Anaconda等。Anaconda是一種Python發(fā)行版,專注于提供科學計算和數(shù)據(jù)分析所需的軟件包和工具。它包括conda包管理器、AnacondaNavigator和JupyterNotebook,還提供了虛擬環(huán)境、打包和發(fā)布自己的包、快速生成報告等功能。Anaconda還支持多種編程語言和工具,使得它成為了數(shù)據(jù)科學家和研究人員進行科學計算的首選工具。VisualStudioCodeSublimeTextJupyterNotebook

先定一個小目標!掌握PyCharm的下載與安裝,能夠獨立在計算機中安裝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.支持遠程開發(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”按鈕進入ChooseInstallLocation界面。1.3.2PyCharm的下載與安裝STEP03PyCharm的安裝保持默認配置,單擊“Next”按鈕,進入InstallationOptions界面,在該界面用戶可根據(jù)需求勾選相應(yīng)功能。1.3.2PyCharm的下載與安裝STEP04PyCharm的安裝勾選所有選項,單擊“Next”按鈕進入ChooseStartMenuFolder界面。1.3.2PyCharm的下載與安裝STEP05PyCharm的安裝單擊的“Install”按鈕開始安裝PyCharm工具,安裝完成后進入CompletingPyCharmCommunityEditionSetup界面。1.3.2PyCharm的下載與安裝

先定一個小目標!掌握PyCharm的使用,能夠使用PyCharm編寫并運行代碼1.3.3使用PyCharm編寫Python程序STEP01雙擊桌面上的PyCharm快捷方式圖標,打開WelcometoPyCharm窗口。1.3.3使用PyCharm編寫Python程序STEP02單擊窗口左側(cè)的Customize菜單項打開自定義配置面板,在該面板中選擇顏色主題為Light。1.3.3使用PyCharm編寫Python程序STEP03單擊窗口左側(cè)的Projects菜單項,切換回項目面板,單擊該面板中的“NewProject”按鈕進入NewProject窗口。1.3.3使用PyCharm編寫Python程序STEP04單擊“Create”按鈕會在D:\PythonProject目錄下創(chuàng)建一個名稱為first_proj的項目,并進入項目管理窗口。1.3.3使用PyCharm編寫Python程序STEP05單擊“Create”按鈕會在D:\PythonProject目錄下創(chuàng)建一個名稱為first_proj的項目,并進入項目管理窗口。1.3.3使用PyCharm編寫Python程序STEP06單擊左上方標注的文件夾圖標,彈出項目的目錄結(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("書山有路勤為徑,學海無涯苦作舟")1.3.3使用PyCharm編寫Python程序STEP10編寫完畢后,單擊窗口上方的

按鈕,或者按組合鍵“Shift+F10”會立即運行該文件的代碼,代碼的運行結(jié)果會顯示到窗口下方的控制臺面板中。1.3.3使用PyCharm編寫Python程序Python模塊1.41.4.1

模塊的安裝

先定一個小目標!掌握模塊的安裝方式,能夠通過pip工具安裝所需的模塊Python中支持以模塊的形式組織和管理代碼,一個擴展名為.py的文件稱之為一個模塊,文件的名稱為模塊的名稱。Python內(nèi)置了一些標準模塊,Python的使用者也貢獻了豐富且強大的第三方模塊,標準模塊可以直接導入程序并使用,而第三方模塊需要先行安裝。1.4.1

模塊的安裝第三方模塊的安裝需要借助pip工具,pip工具是一個通用的Python

模塊、包或庫的管理工具,它提供了查找、下載、安裝、卸載Python模塊、包或庫的功能。默認情況下,安裝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命令進行查看。例如,使用piplist命令查看當前開發(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模塊的導入與使用

先定一個小目標!掌握模塊的導入與使用,能夠在程序中熟練導入并使用模塊在使用模塊之前,需要先將模塊導入到當前程序。Python中使用import語句導入模塊,import語句支持一次導入一個模塊,也支持一次導入多個模塊。使用import語句導入模塊的語法格式如下。import模塊1,模塊2,...1.4.2模塊的導入與使用例如,在程序中導入pygame模塊,具體代碼如下:importpygame模塊導入后,可以通過點字符“.”使用模塊中的內(nèi)容,包括后面會介紹的變量、函數(shù)、類等。使用模塊內(nèi)容的語法格式如下:模塊.變量模塊.函數(shù)模塊.類1.4.2模塊的導入與使用例如,通過pygame模塊使用其中的init()函數(shù),具體代碼如下:pygame.init()通過點字符“.”使用模塊中的內(nèi)容時,可以避免多個模塊中存在同名變量、函數(shù)或類的情況下使代碼產(chǎn)生歧義,但若不存在同名變量、函數(shù)或類,則可以使用“from模塊名import?”直接將模塊中的指定內(nèi)容導入程序,并在程序中直接使用模塊中的內(nèi)容。例如,在程序中導入pygame模塊的init()函數(shù),并直接使用該函數(shù),具體代碼如下1.4.2模塊的導入與使用frompygameimportinitinit()使用“from模塊名import?”語句還可以將指定模塊的全部內(nèi)容導入當前程序,這時只需要將import后面指定的內(nèi)容替換為“*”,即可指代模塊中的全部內(nèi)容。例如,在程序中導入pygame模塊的全部內(nèi)容,具體代碼如下:1.4.2模塊的導入與使用frompygameimport*需要注意的是,雖然使用“from模塊名import*”可以方便地導入一個模塊中的所有內(nèi)容,但出于代碼的可維護性考慮,我們不建議過多使用這種方式。在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是一個常用的科學計算庫,它包含了多個模塊和子包,提供了各種數(shù)值計算和數(shù)組操作的功能。多學一招:代碼的組織方式——模塊、包和庫本章小結(jié)本章首先從Python的發(fā)展歷程和特點兩個方面簡單介紹了Python;然后介紹了如何安裝Python解釋器、運行Python程序;之后介紹了常用的Python開發(fā)工具和PyCharm工具的安裝與使用;最后介紹了Python模塊的安裝、導入與使用。通過學習本章的內(nèi)容,讀者能夠?qū)ython語言有簡單的認識,熟練搭建Python開發(fā)環(huán)境并熟悉模塊的安裝和使用。本章小結(jié)第2章Python基礎(chǔ)《Python快速編程入門(第3版))》學習目標/Target熟悉代碼格式,能夠歸納出注釋、縮進和語句換行的規(guī)范熟悉關(guān)鍵字,能夠列舉至少5個關(guān)鍵字掌握變量的定義與使用,能夠熟練定義并使用變量訪問數(shù)據(jù)熟悉標識符的命名規(guī)則,能夠在程序中使用合法的標識符學習目標/Target掌握數(shù)字類型,能夠在程序中正確處理數(shù)字類型的數(shù)據(jù)掌握數(shù)字類型的轉(zhuǎn)換,能夠根據(jù)需要進行數(shù)字類型的轉(zhuǎn)換掌握變量的輸入與輸出,能夠通過input()和print()函數(shù)實現(xiàn)輸入與輸出的功能了解常用的數(shù)據(jù)類型,能夠復述每種數(shù)據(jù)類型的特點掌握運算符的使用,能夠根據(jù)需要選擇運算符進行運算章節(jié)概述/Summary“萬丈高樓平地起”,再高的大樓都是從平地修建起的,學習Python編程也是同樣的道理。在開始編寫Python程序之前,我們需要先掌握Python的基礎(chǔ)知識。只有把基礎(chǔ)打牢才能邁向更高的學習階段。本章將針對Python的基礎(chǔ)知識,包括代碼格式、標識符、關(guān)鍵字、變量、數(shù)據(jù)類型、數(shù)字類型和運算符進行詳細講解。目錄/Contents010203代碼格式標識符和關(guān)鍵字變量和數(shù)據(jù)類型04實訓案例目錄/Contents050607數(shù)字類型運算符實訓案例代碼格式2.1

先定一個小目標!熟悉代碼格式,能夠歸納出注釋的規(guī)范2.1.1注釋2.1.1注釋注釋是代碼中穿插的輔助性文字,用于標識代碼的含義與功能,提高代碼的可讀性。注釋在Python解釋器執(zhí)行時會被自動忽略,不會對程序產(chǎn)生任何影響。Python程序中的注釋分為單行注釋和多行注釋。2.1.1注釋1.單行注釋單行注釋以“#”開頭,“#”后面的內(nèi)容用于說明當前行或當前行之后代碼的功能。單行注釋既可以單獨占一行,也可以位于標識的代碼之后,與標識的代碼共占一行。示例如下:#我是單行注釋print('志當存高遠')#我也是單行注釋為了保證注釋的可讀性,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."""

先定一個小目標!2.1.2縮進熟悉代碼格式,能夠歸納出縮進的規(guī)范Python代碼使用縮進來確定代碼之間的邏輯關(guān)系和層次關(guān)系,縮進指的是一行代碼之前的空白區(qū)域。Python中可以使用兩種方法來控制縮進,分別是Tab鍵和空格,其中空格是首選的縮進方法,一般使用4個空格表示一級縮進。Python縮進不允許混合使用Tab鍵和空格??s進后的代碼從屬于之上最近的一行非縮進或非同等級別縮進的代碼,示例代碼如下:ifTrue:print("True") else:print("False")2.1.2縮進代碼縮進量的不同會導致代碼語義的改變,Python語言要求同一代碼塊的每行代碼必須具有相同的縮進量。程序中不允許出現(xiàn)無意義或不規(guī)范的縮進,否則運行時會產(chǎn)生錯誤。示例代碼如下:ifTrue:print("Answer")print("True")else:print("Answer")print("False")#縮進不一致,會導致運行錯誤2.1.2縮進

先定一個小目標!2.1.3語句換行熟悉代碼格式,能夠歸納出語句換行的規(guī)范在Python中,如果一條語句過長而無法在一行內(nèi)顯示完整,那么可以將這條語句進行換行以分成多行顯示,從而提高代碼的可讀性。Python官方建議一行代碼的長度不要超過79個字符,超過最好進行換行顯示。Python中可以通過兩種方式進行語句換行,一種方式是在一行代碼的末尾加上符號“\”,另一種方式是使用小括號包裹代碼。2.1.3語句換行使用符號“\”進行換行時,“\”位于一行代碼的末尾,并會連接下面一行的代碼,構(gòu)成一個完整語義的語句。示例如下:side_01=3;side_02=4;side_03=5#使用\進行換行result=side_01+side_02>side_03or\side_02+side_03>side_01or\side_01+side_03>side_022.1.3語句換行使用小括號進行換行時,只需要將代碼全部放到小括號中,此時小括號包裹的代碼會被視為一個完整語義的語句,可以跨越多行顯示。示例如下:side_01=3;side_02=4;side_03=5#使用小括號進行換行result=(side_01+side_02>side_03orside_02+side_03>side_01orside_01+side_03>side_02)2.1.3語句換行標識符和關(guān)鍵字2.2

先定一個小目標!熟悉標識符的命名規(guī)則,能夠在程序中使用合法的標識符2.2.1標識符為了明確某處代碼使用的到底是哪個數(shù)據(jù)、代表的是哪一類信息,開發(fā)人員可以使用一些符號或名稱作為程序中同一個數(shù)據(jù)或同一類信息的標識,這些符號或名稱就是標識符,比如后面章節(jié)提到的變量名、函數(shù)名、類名等。2.2.1標識符凡事無規(guī)矩不成方圓。Python中的標識符在命名時,需要遵守一定的命名規(guī)則,具體如下。Python中的標識符由字母、數(shù)字或下畫線組成,且不能以數(shù)字開頭。Python中的標識符區(qū)分大小寫。例如,andy和Andy是不同的標識符。Python不允許開發(fā)人員使用關(guān)鍵字作為標識符。2.2.1標識符student

#全部是小寫字母LEVEL#全部是大寫字母Flower#大寫字母、小寫字母混合Flower123#大寫字母、小寫字母、數(shù)字混合Flower_123#大寫字母、小寫字母、數(shù)字、下畫線混合不合法的標識符,具體如下:2.2.1標識符from#12 #標識符不能包含#符號2ndObj

#標識符不能以數(shù)字開頭if #if是關(guān)鍵字,不能作為標識符Python對于標識符的命名還有以下兩點建議。(1)見名知意。標識符應(yīng)有具有明確的含義,盡量做到用戶看一眼便知道標識符的意義。例如,使用name標識姓名,使用student標識學生。(2)命名格式要求。為區(qū)分程序中不同地方使用的標識符,Python有一些約定俗成的命名格式規(guī)則,涵蓋了變量名、常量名、模塊名、函數(shù)名和類名,具體要求如下:變量名使用小寫的單個單詞或由下畫線連接的多個單詞,如name、native_place。常量名使用大寫的單個單詞或由下畫線連接的多個單詞,如ORDER_LIST_LIMIT、GAME_LEVEL。模塊名、函數(shù)名使用小寫的單個單詞或由下畫線連接的多個單詞,如low_with_under、generate_random_numbers。類名使用大寫字母開頭的單個或多個單詞,如Cat、CapWorld。2.2.1標識符

先定一個小目標!熟悉關(guān)鍵字,能夠列舉至少5個關(guān)鍵字2.2.2關(guān)鍵字2.2.2關(guān)鍵字關(guān)鍵字是Python已經(jīng)使用的且不允許開發(fā)人員重復定義的標識符。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)鍵字的詳細信息。例如,查看關(guān)鍵字import的詳細信息,示例代碼如下:print(help("import")變量和數(shù)據(jù)類型2.3

先定一個小目標!掌握變量的定義與使用,能夠熟練定義并使用變量訪問數(shù)據(jù)2.3.1變量2.3.1變量計算機語言中變量的概念源于數(shù)學。在數(shù)學中,變量指用拉丁字母表示的、值不固定的數(shù)據(jù)。在計算機語言中,變量指能存儲計算結(jié)果或表示值的抽象概念——程序在運行期間用到的數(shù)據(jù)會被保存在計算機的內(nèi)存單元中,為了方便存取內(nèi)存單元中的數(shù)據(jù),Python使用標識符來標識不同的內(nèi)存單元,從而在程序中通過標識符來引用和操作存儲在內(nèi)存單元中的數(shù)據(jù)。2.3.1變量以存儲數(shù)據(jù)15的變量和存儲數(shù)據(jù)20的變量為例,它們對應(yīng)的標識符名稱分別為num和data,描述變量與內(nèi)存單元之間的關(guān)系。2.3.1變量標識內(nèi)存單元的標識符又稱為變量名,Python通過賦值運算符“=”將內(nèi)存單元中存儲的數(shù)據(jù)與變量名建立聯(lián)系,即定義變量,具體語法格式如下:變量名=值當定義了一個變量并將一個值賦給它時,Python會在內(nèi)存中為值分配一個合適大小的內(nèi)存單元,并將變量與內(nèi)存單元進行關(guān)聯(lián)。例如,將內(nèi)存單元中存儲的值100與變量名data建立聯(lián)系,代碼如下:data=100

先定一個小目標!了解常用的數(shù)據(jù)類型,能夠復述每種數(shù)據(jù)類型的特點2.3.2數(shù)據(jù)類型2.3.2數(shù)據(jù)類型根據(jù)數(shù)據(jù)存儲形式的不同,Python中常用的數(shù)據(jù)類型可以分為兩類,分別是數(shù)字類型和組合數(shù)據(jù)類型,其中組合數(shù)據(jù)類型相對復雜,包括字符串類型、列表類型、元組類型、集合類型、字典類型等。2.3.2數(shù)據(jù)類型1.數(shù)字類型數(shù)字類型用于表示不同種類的數(shù)值數(shù)據(jù),分為整型(int)、浮點型(float)、復數(shù)類型(complex)和布爾類型(bool),其中整型、浮點型和復數(shù)類型的數(shù)據(jù)分別對應(yīng)數(shù)學中的整數(shù)、小數(shù)和復數(shù);布爾類型比較特殊,用于表示真(True)或假(False)的邏輯值。數(shù)字類型的示例如下:整型:

0

101 -239浮點型:

3.14154.2E-10 -2.334E-9復數(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)建列表,在中括號中可以放入多個元素,多個元素之間以逗號進行分隔,示例如下:[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不能重復。Python中一般使用大括號“{}”創(chuàng)建字典,在大括號中可以放入多個元素,多個元素之間以逗號分隔,示例如下:"name":"張三","age":18}#這是一個字典多學一招: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'>

先定一個小目標!掌握變量的輸入與輸出,能夠通過input()和print()函數(shù)實現(xiàn)輸入與輸出的功能2.3.3變量的輸入與輸出STEP012.3.3變量的輸入與輸出程序要實現(xiàn)人機交互功能,需能從輸入設(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ù)之間使用的分隔符,默認值為空格。end:可選參數(shù),用于設(shè)定輸出結(jié)果以什么結(jié)尾,默認值為換行符\n。file:可選參數(shù),表示數(shù)據(jù)要寫入的文件對象,默認值為sys.stdout,表示標準輸出流,默認情況下程序會將結(jié)果輸出到控制臺。flush:可選參數(shù),表示是否刷新標準輸出流,默認值為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ù)實訓案例2.4

先定一個小目標!2.4.1輸出購物小票根據(jù)任務(wù)描述實現(xiàn)案例:輸出購物小票2.4.1輸出購物小票購物小票又稱購物收據(jù),是指消費者購買商品時由商場或其他商業(yè)機構(gòu)提供給用戶的消費憑證。購物小票中一般會包含用戶購買的商品名稱、數(shù)量、單價及總金額等信息。2.4.1輸出購物小票本案例要求編寫代碼,依次接收用戶從鍵盤輸入的商品價格,并根據(jù)價格輸出購物小票內(nèi)容。

先定一個小目標!2.4.2輸出植樹證書根據(jù)任務(wù)描述實現(xiàn)案例:輸出植樹證書螞蟻森林是支付寶客戶端發(fā)起“碳賬戶”的一款公益活動,用戶通過步行、地鐵出行、在線消費等行為,可在螞蟻森林中獲取能量,當能量到達一定數(shù)值后,用戶可以在支付寶中申請一顆虛擬的樹,申請成功后會收到支付寶發(fā)放的一張植樹證書。植樹證書中包含申請日期、樹苗編號、種植地點等信息。2.4.2輸出植樹證書本案例要求編寫代碼,根據(jù)用戶輸入的昵稱和植物實現(xiàn)輸出植樹證書信息的功能。2.4.2輸出植樹證書數(shù)字類型2.52.5.1

整型

先定一個小目標!掌握整型的定義,能夠正確定義并使用定義的整數(shù)整數(shù)類型(int)簡稱整型,它用于表示整數(shù),例如100、101、-100、-101等。Python中整型數(shù)據(jù)的大小沒有限制,只要計算機的內(nèi)存足夠大,用戶就無須考慮內(nèi)存溢出問題。2.5.1

整型整型常用的計數(shù)方式有4種,分別是二進制、八進制、十進制和十六進制,默認的計數(shù)方式為十進制,其中二進制數(shù)以“0B”或“0b”開頭,八進制數(shù)以數(shù)字“0o”或“0O”開頭,十六進制數(shù)以“0x”或“0X”開頭。接下來,分別以4種計數(shù)方式表示整型數(shù)據(jù)5,示例如下:5#十進制數(shù)0b101#二進制數(shù)0o5#八進制數(shù)0x5#十六進制數(shù)2.5.1

整型為了方便用戶使用不同進制的數(shù)據(jù),Python中提供了一些用于轉(zhuǎn)換數(shù)據(jù)進制的函數(shù),分別是bin()、oct()、int()、hex(),這些函數(shù)都可以將一種進制的整型數(shù)據(jù)轉(zhuǎn)換為其他進制的的整型數(shù)據(jù)。2.5.1

整型運算符說明bin(x)將x轉(zhuǎn)換為二進制數(shù)oct(x)將x轉(zhuǎn)換為八進制數(shù)int(x)將x轉(zhuǎn)換為十進制數(shù)hex(x)將x轉(zhuǎn)換為十六進制數(shù)各函數(shù)的用法,示例代碼如下:2.5.1

整型decimal=10#十進制數(shù)bin_num=0b1010#二進制數(shù)print(bin(decimal))#將十進制數(shù)10轉(zhuǎn)換為二進制數(shù)print(oct(decimal))#將十進制數(shù)10轉(zhuǎn)換為八進制數(shù)print(int(bin_num))#將二進制數(shù)0b1010轉(zhuǎn)換為十進制數(shù)print(hex(decimal))#將十進制數(shù)10轉(zhuǎn)換為十六進制數(shù)2.5.2浮點型

先定一個小目標!掌握浮點數(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當需要表示較大或較小的實數(shù)時,直接使用小數(shù)點形式會出現(xiàn)非常冗長的數(shù)字位數(shù)。為了簡化這種表示方式,可以使用科學記數(shù)法表示浮點型數(shù)據(jù)。2.5.2浮點型科學記數(shù)法會把一個數(shù)表示成a與10的n次冪相乘的形式,數(shù)學中科記數(shù)法的格式:a×10n(1≤|a|<10,n∈N)Python使用字母e或E表示底數(shù)10,示例如下:-3.14e10

#相當于-3.14×,結(jié)果為-314000000003.14e-10

#相當于3.14×,結(jié)果為0.0000000003142.5.2浮點型Python中的浮點型是雙精度的,每個浮點型數(shù)據(jù)占8個字節(jié)(即64位)的存儲空間。這種雙精度的浮點型數(shù)據(jù)遵守IEEE754標準,其中52位用于存儲尾數(shù),11位用于存儲階碼,剩余1位用于存儲符號。Python中浮點型數(shù)據(jù)的取值范圍為-1.8e308~1.8e308,若超出這個范圍,Python會將數(shù)據(jù)視為無窮大(inf)或無窮?。?inf)。示例如下:print(3.14e500)print(-3.14e500)

先定一個小目標!掌握復數(shù)類型的定義,能夠正確定義并使用定義的復數(shù)2.5.3復數(shù)類型復數(shù)類型(complex)用于表示復數(shù),復數(shù)的一般形式為real+imagj或real+imagJ,其中real是實部,表示復數(shù)的實數(shù)部分;imag是虛部,表示復數(shù)的虛數(shù)部分;j或J是虛數(shù)單位。注意,實部可以直接省略;虛部后面必須有虛數(shù)單位,虛數(shù)單位不能單獨存在。示例如下:complex_one=1+2j

#實部為1,虛部為2complex_two=2j#虛部為22.5.3復數(shù)類型通過complex()函數(shù)創(chuàng)建復數(shù),該函數(shù)的使用方式為complex(實部,虛部),我們需要根據(jù)需求傳入相應(yīng)的實部和虛部。若是沒有傳入虛部,則虛部默認為0。示例如下:complex_one=complex(3,2)#創(chuàng)建復數(shù),分別傳入實部和虛部print(complex_one)complex_two=complex(5)#創(chuàng)建復數(shù),只傳入實部print(complex_two)通過real和imag屬性可以單獨獲取復數(shù)的實部和虛部,具體使用方式為“復數(shù).real”和“復數(shù).imag”,示例如下:complex_one=1+2jprint(complex_one.real)

#獲取復數(shù)實部print(complex_one.imag)#獲取復數(shù)虛部2.5.3復數(shù)類型

先定一個小目標!掌握布爾類型的使用,能夠正確使用布爾類型2.5.4布爾類型2.5.4布爾類型布爾類型用于表示邏輯判斷的真或假,真對應(yīng)的取值是True,假對應(yīng)的取值是False。Python中,任何數(shù)據(jù)都可以進行邏輯判斷后得到一個布爾值,布爾值為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))#檢測復數(shù)類型數(shù)據(jù)0j的布爾值print(bool('hello'))#檢測字符串'hello'的布爾值print(bool(1))#檢測整型數(shù)據(jù)1的布爾值

先定一個小目標!掌握數(shù)字類型的轉(zhuǎn)換,能夠根據(jù)需要進行數(shù)字類型的轉(zhuǎn)換2.5.5數(shù)字類型轉(zhuǎn)換Python內(nèi)置了一系列可強制轉(zhuǎn)換數(shù)據(jù)類型的函數(shù),使用這些函數(shù)可將目標數(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表示進制數(shù),它的取值為2到36之間的整數(shù)。如果沒有使用base指定進制數(shù),則會將x轉(zhuǎn)換為十進制整數(shù)float(x)將x轉(zhuǎn)換為一個浮點型數(shù)據(jù),x的值可以是整型、浮點型、布爾類型的數(shù)據(jù),或者符合浮點型規(guī)范的字符串complex(x)將x轉(zhuǎn)換為復數(shù)類型數(shù)據(jù),x的值可以是任意數(shù)字類型的數(shù)據(jù),或者符合復數(shù)類型規(guī)范的字符串2.5.5數(shù)字類型轉(zhuǎn)換需要注意的是,當通過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)換為復數(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)換為復數(shù)類型的數(shù)據(jù)2.5.5數(shù)字類型轉(zhuǎn)換注意,如果字符串中的所有內(nèi)容是除十進制以外其他進制的數(shù)據(jù),那么使用int()函數(shù)將該字符串轉(zhuǎn)換成整型數(shù)據(jù)時,需要使用base指定要轉(zhuǎn)換的進制。示例如下:words_four='0b1010'#字符串中包含二進制數(shù)print(int(words_four,base=2))#將字符串轉(zhuǎn)換為整型數(shù)據(jù),指定二進制運算符2.62.6.1

算術(shù)運算符

先定一個小目標!掌握運算符的使用,能夠正確使用算術(shù)運算符算術(shù)運算符主要用于執(zhí)行基本的數(shù)學運算,比如加法、減法、乘法、除法等,Python中的算術(shù)運算符包括+、-、*、/、//、%和**,它們都是雙目運算符,能夠?qū)蓚€操作數(shù)進行相應(yīng)的數(shù)學運算。2.6.1

算術(shù)運算符下面以a=2,b=8為例,介紹算術(shù)運算符的功能說明及示例。2.6.1

算術(shù)運算符運算符說明示例+加:使兩個操作數(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ù)進行冪運算,獲取a的b次冪a**b,結(jié)果為243Python中的算術(shù)運算符既支持對相同類型的數(shù)值進行運算,也支持對不同類型的數(shù)值進行混合運算。在進行混合運算時Python會強制將數(shù)值的類型進行類型轉(zhuǎn)換,類型轉(zhuǎn)換遵循如下原則:(1)整型與浮點型進行混合運算時,將整型轉(zhuǎn)化為浮點型。(2)其他類型與復數(shù)運算時,將其他類型轉(zhuǎn)換為復數(shù)類型。使用整型數(shù)據(jù)分別與浮點型和復數(shù)類型的數(shù)據(jù)進行運算,示例如下:2.6.1

算術(shù)運算符print(10/2.0) #整型會轉(zhuǎn)換為浮點型的數(shù)據(jù)10.0print(10-(3+5j)) #整型會轉(zhuǎn)換為復數(shù)類型的數(shù)據(jù)10+0j2.6.2賦值運算符

先定一個小目標!掌握運算符的使用,能夠正確使用賦值運算符賦值運算符用于將一個表達式或值賦值給變量。最簡單的賦值運算符是=,例如,使用賦值運算符=將整數(shù)3賦值給變量num,示例如下:2.6.2賦值運算符num=3賦值運算符=允許同時為多個變量賦值,既可以為多個變量賦同一個值,也可以賦不同的值,示例如下:x=y=z=1#變量x、y、z均賦值為1a,b=1,2

#變量a賦值為1,變量b賦值為2注意,當使用賦值運算符=同時為多個變量賦不同的值時,賦值運算符=左右兩邊的變量和值的數(shù)量必須保持一致,否則運行后會出現(xiàn)錯誤。2.6.2賦值運算符Python還有一種復合賦值運算符,復合賦值運算符同時具備算術(shù)運算和賦值兩項功能。下面以變量num為例,介紹Python復合賦值運算符的功能說明及示例。2.6.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%2**=將左邊的變量提升到右邊值的冪次方,并將結(jié)果賦給左邊變量num**=2等價于num=num**2Python3.8中新增了一個賦值運算符——海象運算符“:=”,該運算符用于在表達式內(nèi)部同時為變量賦值和使用變量,因其符號形似海象的眼睛和長牙而得名。海象運算符的用法示例如下:2.6.2賦值運算符num_one=1result=num_one+(num_two:=2) #使用海象運算符為變量num_two賦值print(result)2.6.3比較運算符

先定一個小目標!掌握運算符的使用,能夠正確使用比較運算符比較運算符也叫關(guān)系運算符,用于比較兩邊操作數(shù)之間的關(guān)系。Python中的比較運算符包括==、!=、>、<、>=、<=,它們通常用于布爾測試,測試的結(jié)果只能是True或False。下面以x=2,y=3為例,介紹比較運算符的功能說明及示例。2.6.2賦值運算符運算符說明示例==比較兩個操作數(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邏輯運算符

先定一個小目標!掌握運算符的使用,能夠正確使用邏輯運算符邏輯運算符可以把多個條件按照邏輯進行連接,變成更復雜的條件。Python中分別使用or、and、not這三個關(guān)鍵字作為邏輯運算符,其中or與and為雙目運算符,用于對兩個操作數(shù)進行邏輯或、邏輯與運算;not為單目運算符,用于對一個操作數(shù)進行邏輯非運算。下面以x=10,y=20為例,介紹邏輯運算符的功能說明以及示例。2.6.2賦值運算符運算符說明示例and若兩個操作數(shù)的布爾值均為True,則返回右操作數(shù),運算結(jié)果的布爾值為True;若兩個操作數(shù)的布爾值均為False,則會返回左操作數(shù),運算結(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邏輯運算符

先定一個小目標!掌握運算符的使用,能夠正確使用成員運算符成員運算符用于檢測給定數(shù)據(jù)是否存在于字符串、列表、元組、集合、字典等序列中,關(guān)于它們的介紹如下。in:如果指定數(shù)據(jù)在序列中返回True,否則返回False。notin:如果指定數(shù)據(jù)不在序列中返回True,否則返回False。成員運算符的用法示例如下:2.6.5邏輯運算符x='Python'y='P'print(yinx)print(ynotinx)2.6.6位運算符

先定一個小目標!掌握運算符的使用,能夠正確使用位運算符位運算符用于對操作數(shù)的二進制位進行邏輯運算,操作數(shù)必須為整數(shù)。Python中一共有六個位運算符,分別是<<、>>、&、|、^、~。2.6.5位運算符運算符說明<<操作數(shù)按位左移>>操作數(shù)按位右移&左操作數(shù)與右操作數(shù)執(zhí)行按位與運算|左操作數(shù)與右操作數(shù)執(zhí)行按位或運算^左操作數(shù)與右操作數(shù)執(zhí)行按位異或運算~操作數(shù)按位取反1.按位左移運算符(<<)按位左移是指將二進制形式操作數(shù)的所有位向左移動指定的位數(shù),移出位被丟棄,移入位補0。以十進制的整數(shù)9為例,當執(zhí)行9<<4運算時,首先會將9自動轉(zhuǎn)換為二進制數(shù)00001001,然后將二進制數(shù)00001001的所有位向左移動4位。2.6.5位運算符左移n位相當于操作數(shù)乘以2的n次方,根據(jù)此原理可借助乘法運算符實現(xiàn)按位左移操作。2.按位右移運算符(>>)按位右移是指將二進制形式操作數(shù)的所有位向右移動指定的位數(shù),移出位被丟棄,移入位補0。以十進制的整數(shù)8為例,當執(zhí)行8>>2運算時,首先會將8自動轉(zhuǎn)換為二進制數(shù)00001000,然后將二進制數(shù)00001000的所有位向右移動2位。2.6.5位運算符右移n位相當于操作數(shù)除以2的n次方并向下取整,根據(jù)此原理可借助除法運算符實現(xiàn)右移功能。3.按位與運算符(&)按位與是指將參與運算的兩個操作數(shù)對應(yīng)的二進制位進行邏輯與操作。當對應(yīng)的兩個二進制位均為1時,結(jié)果位就為1,否則為0。以十進制的整數(shù)9和3為例,當執(zhí)行9&3運算時,首先會將9和3自動轉(zhuǎn)換為二進制數(shù)00001001和00000011,然后將二進制數(shù)00001001和00000011的對應(yīng)位進行邏輯與操作。2.6.5位運算符4.按位或運算符(|)按位或是指將參與運算的兩個操作數(shù)對應(yīng)的二進制位進行邏輯或操作。若對應(yīng)的兩個二進制位有一個為1時,結(jié)果位就為1,否則為0。若參與運算的操作數(shù)為負數(shù),則參與運算的兩個操作數(shù)均以補碼出現(xiàn)。2.6.5位運算符5.按位異或運算符(^)按位異或是指將參與運算的兩個操作數(shù)對應(yīng)的二進制位進行異或操作。當對應(yīng)的兩個二進制位中有一個為1,另一個為0時,結(jié)果位為1,否則結(jié)果位為0。2.6.5位運算符6.按位取反運算符(~)按位取反是指將二進制的每一位進行取反,0取反為1,1取反為0。按位取反操作首先會獲取這個數(shù)的補碼,然后對補碼進行取反,最后將取反結(jié)果轉(zhuǎn)換為原碼。例如,對9進行按位取反的運算過程如下。①獲取補碼。9的二進制數(shù)是00001001,因為9屬于正數(shù),計算機中正數(shù)的原碼、反碼和補碼相等,所以9的補碼仍然為00001001。②取反操作。對9的補碼00001001進行取反操作,即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位運算符正數(shù)9按位取反的計算過程如圖所示。2.6.5位運算符2.6.7運算符優(yōu)先級

先定一個小目標!掌握運算符優(yōu)先級,能夠在數(shù)值運算中正確使用運算符Python支持使用多個不同的運算符連接簡單表達式實現(xiàn)相對復雜的功能,為了避免含有多個運算符的表達式出現(xiàn)歧義,Python為每種運算符都設(shè)定了優(yōu)先級。2.6.7運算符優(yōu)先級Python中運算符的優(yōu)先級從高到低如表所示。2.6.7運算符優(yōu)先級運算符說明**冪運算符*、/、%、//乘法運算符、除法運算符、取模運算符、整除運算符+、-加法運算符、減法運算符>>、<<按位右移、按位左移&按位與^、|按位異或、按位或==、!=、>=、>、<=、<比較運算符in、notin成員運算符not、and、or邏輯運算符+=,-=,*=,/=,//=,%=,**=復合賦值運算符=賦值運算符**冪運算符*、/、%、//乘法運算符、除法運算符、取模運算符、整除運算符+、-加法運算符、減法運算符如果表達式中包含小括號,那么解釋器會先執(zhí)行小括號包裹的子表達式。示例代碼如下:2.6.7運算符優(yōu)先級a=20b=2c=15result_01=(a-b)+c

#先執(zhí)行小括號中的表達式,再執(zhí)行加法運算result_02=a/b%c #先執(zhí)行除法運算,再執(zhí)行取余運算result_03=c**b*a

#先執(zhí)行冪運算,再執(zhí)行乘法運算print(result_01)print(result_02)print(result_03)實訓案例2.7

先定一個小目標!根據(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)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論