版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
Machine
Learning
with
Python1.1目錄1.21.3Python概述Python變量與簡單數(shù)據(jù)類型Python程序結構1.4案例——人機對話猜數(shù)1.5延伸閱讀——開源編程Python概述本節(jié)介紹Python的產(chǎn)生與發(fā)展、Python的特點、Python的應用領域和PyCharm1.13
Python的產(chǎn)生Python語言起源于1989年年末。Guido從高級教學語言ABC(AllBasicCode)中汲取了大量語法,并從系統(tǒng)編程語言Modula-3借鑒了錯誤處理機制,從而開發(fā)了命名為Python的新腳本解釋程序。Python的發(fā)展Python語言產(chǎn)生后,于1991年年初以開源方式公開發(fā)行第一個版本Python1.0。2000年10月發(fā)布了Python2.0,增加了許多新的語言特性。2008年12月發(fā)布了Python3.0,該版本在語法上有較大變化。Python3.x的設計理念更加合理、高效和人性化,代碼開發(fā)和運行效率更高。Python官方于2019年9月宣布,2020年1月1日起停止對Python2.x的維護和更新。所以,使用Python2.x系列的用戶應盡快轉換成3.x并且選擇較高的版本。1.1.1Python簡介Python的產(chǎn)生與發(fā)展4
1.1.1
Python簡介1)簡單易學。Python語法結構簡單,遵循優(yōu)雅、明確、簡單的設計理念,易學、易讀、易維護。2)解釋型語言。Python解釋器將源代碼轉換成Python的字節(jié)碼,由Python虛擬機逐條執(zhí)行字節(jié)碼指令,即可完成程序的執(zhí)行,用戶不再擔心如何編譯、鏈接是否正確等,使得Python更加簡單方便。3)面向對象。Python既支持面向過程的編程又支持面向對象的編程,支持靈活的程序設計方式。4)免費和開源。Python是FLOSS(自由/開放源碼軟件)之一。簡單地說,用戶可以自由地發(fā)布這個軟件的副本,閱讀和更改其源代碼,并可將它的一部分用于新的自由軟件中。5)跨平臺和可移植性。由于Python的開源特性,經(jīng)過改動,Python已經(jīng)被移植到Windows、Linux、MacOS、Android等不同的平臺上工作。6)豐富的標準庫。除了Python官方提供的非常完善的標準庫外,還具有豐富的第三方庫,有助于處理各種工作,包括輸入/輸出、文件系統(tǒng)、數(shù)據(jù)庫、網(wǎng)絡編程、圖形處理、文本處理等,供開發(fā)者直接調用,省去編寫大量代碼的過程。7)可擴展性和可嵌入性。如果用戶需要讓自己的一段關鍵代碼運行更快,或者是編寫一些不愿開放的算法,則可以將那部分程序用C/C++編寫,然后在Python程序中調用它們。同樣,用戶可以把Python嵌入到C/C++程序中,為程序用戶提供腳本功能。Python的特點5
1.1.1Python簡介1)操作系統(tǒng)管理與維護。Python提供API(ApplicationProgrammingInterface應用程序編程接口)可以方便地對操作系統(tǒng)進行管理和維護。2)科學計算與數(shù)據(jù)可視化。Python提供了很多用于科學計算與數(shù)據(jù)可視化的模塊,如NumPy、SciPy、Matplotlib等,可實現(xiàn)科學計算、二維圖表、三維數(shù)據(jù)可視化、三維動畫演示、圖像處理以及界面設計等應用領域。3)圖形用戶界面(GUI)開發(fā)。Python支持GUI開發(fā),可以使用Tkinter、wxPython、PyQt庫開發(fā)各種跨平臺的桌面軟件。4)文本處理。Python提供的re模塊能支持正則表達式,還提供SGML、XML分析模塊,可以利用Python開發(fā)XML程序。5)網(wǎng)絡編程及Web開發(fā)。Python提供的Socket模塊對Socket接口進行了二次封裝,支持Socket接口的訪問,以支持網(wǎng)絡編程。Python還提供了urllib、cookielib、httplib、scrap等大量模塊用于對網(wǎng)頁內(nèi)容進行讀取和處理,并結合多線程編程以及其他有關模塊可以快速實現(xiàn)Web應用開發(fā)。Python還支持Web網(wǎng)站開發(fā),搭建Web框架,目前比較流行的開發(fā)框架有Web2Py、Django等。6)數(shù)據(jù)庫編程。Python提供了支持所有主流關系數(shù)據(jù)庫管理系統(tǒng)的接口DB-API(數(shù)據(jù)庫應用程序編程接口)規(guī)范的模塊,用于與SQLite、MySQL、SQLServer、Oracle等數(shù)據(jù)庫通信。另外,Python自帶一個Gadfly模塊,提供了完整的SQL環(huán)境。7)游戲開發(fā)。Python在網(wǎng)絡游戲開發(fā)中得到廣泛應用。Python提供的Pygame模塊可以在Python程序中創(chuàng)建功能豐富的游戲和多媒體程序。Python的應用領域6
1.1.2
Python開發(fā)環(huán)境搭建Python的下載與安裝從Python官網(wǎng)下載Python安裝包。例如,選擇Windows環(huán)境的安裝包,網(wǎng)址為“/downloads/windows/”,運行界面如圖1-1a所示,下載最新版Python3.7.4安裝包,如圖1-1b所示,可根據(jù)需要選擇下載32位、64位安裝包。
a)
圖1-1Python安裝包下載b)
7
1.1.2
Python的安裝與配置Python3.7.4安裝包下載后即可開始安裝,以64位系統(tǒng)為例,安裝過程如下:開始安裝Python。雙擊安裝包文件,安裝向導界面如圖1-2所示,選中“AddPython3.7toPATH”復
選框,以配置Python運行路徑。定制安裝。單擊圖1-2中的“Customizeinstallation”選項,選擇特性界面如圖1-3所示,此時不需做任何修改,直接單擊“Next”按鈕。設置高級選項。根據(jù)需要設置“AdvancedOptions”,如設置Python安裝路徑等,如圖1-4所示,單擊“Install”按鈕開始安裝,安裝進度如圖1-5所示。安裝完成。安裝成功界面如圖1-6所示,單擊“Close”按鈕結束安裝。Python3.7.4程序組如圖1-7所示。圖1-2定制安裝Python8
圖1-3Python選定特性設置圖1-4Python高級選項設置圖1-5Python安裝進行中圖1-6Python成功安裝
9
圖1-7Python3.7程序組10
1.1.2
Python的安裝與配置
系統(tǒng)環(huán)境變量的設置Windows中添加環(huán)境變量有以下方法。
安裝時直接添加。安裝Python系統(tǒng)時選中圖1-2中“AddPython3.7toPATH”復選框,則系統(tǒng)自動將安裝路徑添加到環(huán)境變量Path中。安裝后手動添加。如果安裝時未選中圖1-2中“AddPython3.7toPATH”復選框,則可在安裝完成后手動添加。其方法如下(操作過程如圖1-8所示)。圖1-8手動添加Python環(huán)境變量11
1.1.2
Python的安裝與配置
Python運行Python安裝完成后,可以選擇圖1-7中“Python3.7(64-bit)”啟動Python解釋器,也可以選擇圖1-7中“IDLE(Python3.764-bit)”啟動Python集成開發(fā)環(huán)境IDLE。Python解釋器啟動后,可以直接在其提示符(>>>)后輸入語句。例如,在提示符>>>后輸入一個輸出語句print("HelloPython!"),下一行直接解釋運行輸出“HelloPython!”,不需編譯直接解釋運行,如圖1-9所示。與直接運行Python解釋器相似,IDLE同樣輸出“HelloPython!”,如圖1-10所示。圖1-9Python3.7.4解釋器運行窗口圖1-10Python3.7.4IDLE運行窗口12
1.1.2
Python的安裝與配置
JupyterNoteBook下載與安裝可以從官網(wǎng)“/distribution/#download-section”(如圖1-11所示)選擇合適系統(tǒng)(如Windows系統(tǒng))下合適的版本(如Python3.7version)下載,然后運行安裝文件“Anaconda3-2019.07-Windows-x86_64.exe”,按提示步驟完成安裝即可,安裝完成后的程序組如圖1-12所示。圖1-11Anaconda下載界面圖1-12Anaconda程序組13
1.1.2Python的安裝與配置
JupyterNoteBook運行單擊圖1-10中的JupyterNoteBook項啟動JupyterNoteBook。啟動JupyterNoteBook會打開一個網(wǎng)頁,在該網(wǎng)頁右上角單擊菜單“New”,選擇“Python3”(如圖1-13所示),即打開一個新窗口,可以在該窗口中編寫和運行Python代碼,如圖1-14所示,另外,還可以選擇“File->Downloadas”命令將當前代碼及運行結果保存為不同形式的文件,方便以后學習和演示,如圖1-15所示。圖1-13JupyterNoteBook運行界面
圖1-15JupyterNoteBook代碼和運行結果保存不同形式圖1-14JupyterNoteBook運行Python程序14
1.1.2
Python的安裝與配置
Pycharm下載與安裝PyCharm官方下載網(wǎng)址為“/pycharm/download/”,提供Professional(專業(yè)版)和Community(社區(qū)版,免費開源版本)兩個版本的PyCharm供用戶選擇安裝。下面以Windows環(huán)境下安裝PyCharmCommunity版為例。安裝初始界面。運行下載的PyCharm安裝包文件“pycharm-community-2019.2.2.exe”,進入歡迎界面,如圖1-16所示,單擊“Next”按鈕。設置安裝路徑。選擇安裝位置,如圖1-17所示。設置后單擊“Next”按鈕。設置安裝選項??芍付ń⒖旖莘绞郊爸付ㄊ欠衽c“.py”文件關聯(lián),如圖1-18所示,設置后單擊“Next”按鈕。設置開始菜單文件夾。如圖1-19所示,設置后單擊“Next”按鈕,安裝進度如圖1-20所示,完成后單擊“Next”按鈕。PyCharm安裝完成。如圖1-21所示,單擊“Finish”按鈕完成安裝。圖1-16PyCharm安裝歡迎界面
15
圖1-17PyCharm安裝目錄設置圖1-18PyCharm安裝選項設置圖1-19PyCharm開始菜單文件夾設置圖1-20PyCharm安裝進度
16
圖1-21PyCharm安裝完成17
1.1.2
Python的安裝與配置
PyCharm運行選擇“開始->所有程序->JetBrains->JetBrainsPyCharmCommunityEdition2019.2.2”啟動PyCharm,其運行窗口如圖1-22所示。可以新建Python源程序文件,輸入源程序并調試運行等一系列操作。注意,PyCharm初始運行界面為黑色背景,若需要改變背景顏色為其他顏色(如白色,如圖1-22所示),可以單擊“File->Setting...”選項,彈出“Settings”對話框,選擇“Editor->ColorScheme->ConsoleColors”選項,將“Scheme:”設置為“Default”選項,背景即變?yōu)榘咨?,如圖1-23所示。圖1-22PyCharm運行窗口圖1-23設置PyCharm運行窗口的背景顏色18
1.1.3Python程序基本編寫方法
交互式(命令行方式)進入Python交互式的方法有以下兩種:從命令行窗口啟動Python。選擇Windows開始菜單,在“搜索程序和文件”框中輸入cmd<Enter>(<Enter>表示按Enter鍵,下同),啟動命令行窗口,在命令行窗口中輸入Python<Enter>,進入Python交互式解釋器,如圖1-9所示。此時用戶可以在提示符>>>下輸入Python命令或調用函數(shù),以命令行方式交互式地使用Python解釋器。從Python程序組啟動Python。選擇Windows開始菜單下的Python程序組(如圖1-7所示),單擊其中的“Python3.7(64-bit)”或“IDLE(Python3.764-bit)”菜單項均可啟動Python交互式解釋器,如圖1-10所示。19
1.1.3Python程序基本編寫方法
腳本式(源程序文件方式)在交互方式下輸入Python代碼雖然方便,但是這些語句不能保存,無法重復執(zhí)行或留作將來使用。因此,Python提供源程序文件方式,用戶可以使用記事本、集成開發(fā)工具(IDLE、PyCharm等)編寫源代碼,并將源程序保存成擴展名為“.py”的Python腳本“.py”文件,然后在Python的命令行方式下輸入如下語句執(zhí)行該腳本文件,同樣可以得到運行結果。pythonfilename.py其中,filename是源程序文件名。20
1.1.3Python程序基本編寫方法【例1-2】編寫程序并保存為腳本文件,文件名為“example1_2.py”。程序實現(xiàn)功能:在屏幕上分兩行輸出“HelloPython!”和“歡迎使用Python!”。1)用記事本等文本編輯器(注意不能使用MSWord等字處理軟件)編寫程序源代碼,內(nèi)容如下。文件以“example1_2.py”命名保存在“d:\python311”文件夾下。
#example1_2.py
#encoding:UTF-8
print("HelloPython!")#在屏墓上輸出“He1lo.Python!”
print("歡迎使用Pyhton!")#在屏幕上輸出“歡迎使用Python!”
啟動命令提示符窗口運行該源程序文件,輸入如下命令:
pythond:\python311\example1_2.py21
1.1.3Python程序基本編寫方法【例1-3】編寫程序,程序實現(xiàn)功能:求兩個數(shù)之和。
【解】參考程序如下:
a=3 #給變量a賦值3
b=5 #給變量b賦值5
sum=a+b #求a,b之和,保存在sum中
print('a=',a,'b=',b,'sum=',sum) #輸出a,b及sum的值
程序運行結果如下:
a=3b=5sum=822
1.1.3Python程序基本編寫方法
Python幫助在Python中可以使用help()方法獲取幫助信息。在IDLE的環(huán)境下獲得Python幫助信息分為以下3種情況。獲取內(nèi)置函數(shù)和類型的幫助信息。為獲得某個內(nèi)置函數(shù)的幫助信息,則可以在提示符>>>后面直接輸入:help(對象名)。例如,想獲得內(nèi)置函數(shù)sum的幫助信息,則在提示符后面輸入help(sum),即可獲得內(nèi)置函數(shù)sum的幫助信息,如圖1-28所示。獲取模塊中的成員函數(shù)信息。為獲得某個模塊中成員函數(shù)的幫助信息,則需先導入該模塊,然后再輸入:help(模塊名.對象名)。例如,想獲得math模塊中的fabs成員函數(shù)幫助信息,則需先導入math模塊,然后輸入help(math.fabs),即可獲得該函數(shù)的幫助信息,如圖1-29所示。圖1-28
Python內(nèi)置函數(shù)sum幫助信息圖1-29
math模塊中fabs函數(shù)的幫助信息23
1.1.3Python程序基本編寫方法
Python幫助獲取整個模塊的幫助信息。為獲得整個模塊的幫助信息,則需先導入該模塊,然后輸入:help(模塊名)。例如,想獲得math模塊中所有的幫助信息,則需先導入math模塊,然后輸入help(math),即可獲取整個模塊的幫助信息,如圖1-30所示。另外,Python提供了非常完善的Python幫助文檔,在Python安裝目錄的doc文件夾下,文件名為“python374.chm”,雙擊即可打開,如圖1-31所示。圖1-30整個math模塊中的幫助信息圖1-31Python的幫助文檔24
1.1.3Python程序基本編寫方法
Python錯誤語法錯誤。語法錯誤是指不符合Python程序的語法規(guī)則,比如語句格式錯、函數(shù)引用格式錯等。Python解釋器在程序執(zhí)行過程會檢測出程序存在的語法錯誤,并指出出錯的一行,在最先找到的錯誤位置做出標記。邏輯錯誤。邏輯錯誤是指用戶編寫的程序已經(jīng)沒有語法錯誤,可以運行,但運行卻得不到所期望的結果(或正確的結果)或者運行期間發(fā)生錯誤。Python錯誤與調試25
1.1.3Python程序基本編寫方法
Python調試
Python調試方法主要有:可以通過Python解釋器查找、定位語法錯誤??梢栽赑ython程序的某些關鍵位置增加print語句顯示直接出變量的值,從而確定程序執(zhí)行到此處是否出錯。這種方法簡單、直接,但比較麻煩,因為開發(fā)人員必須在所有可疑的地方都插入輸出語句,程序調試完成后,必須將這些輸出語句全部清除??梢岳谜{試器(Debugger)調試程序以幫助程序員查找程序的邏輯錯誤。調試器的功能主要包括暫停程序執(zhí)行、檢查和修改變量、調用方法等,但調試器并不更改程序代碼。程序員可以利用調試器分析被調試程序的數(shù)據(jù),并監(jiān)視程序的執(zhí)行流程。IDLE、PyCharm等集成開發(fā)環(huán)境均提供了調試器幫助開發(fā)人員查找邏輯錯誤。DebugControl調試工具可以完成各種調試跟蹤功能,其主要功能如表1-1所示。Python錯誤與調試26
1.1.3Python程序基本編寫方法
DebugControl調試工具可以完成各種調試跟蹤功能,其主要功能如表1-1所示。表1-1DebugControl調試工具主要功能功能名稱功能使用說明執(zhí)行說明Go直接運行代碼到指定的斷點處在源文件編程窗口中的指定代碼行處,按鼠標右鍵設置SetBreakpoint,可以用ClearBreakpoint取消Step一次讓程序執(zhí)行一行代碼,如果當前行是一個函數(shù)調用,則Debugger會跳進這個函數(shù)里面在DebugControl窗口上直接單擊Step按鈕Over讓程序一次執(zhí)行一行代碼,如果當前行是一個函數(shù)調用,則Debugger不會跳進這個函數(shù),而是直接得到其運行結果,并移動到下一行在DebugControl窗口上直接單擊Over按鈕Out當Debugger已進入某一個函數(shù)調用的時候,可以直接跳出這個函數(shù);當未進入函數(shù)調用的時候(即在主程序中),則與Go作用相同在DebugControl窗口上直接單擊Out按鈕Quit退出調試過程在DebugControl窗口上直接單擊Quit按鈕Stack堆棧調用層次在DebugControl窗口上直接單擊Stack復選框Locals查看局部變量在DebugControl窗口上直接單擊Locals復選框Source跟進源代碼在DebugControl窗口上直接單擊Source復選框Globals查看全局變量在DebugControl窗口上直接單擊Globals復選框27
1.1.3Python程序基本編寫方法1)代碼縮進。代碼縮進是Python語法中的強制要求。Python源程序的代碼之間的邏輯關系依賴于代碼塊的縮進。對于類定義、函數(shù)定義、選擇結構,循環(huán)結構以及異常處理結構,行尾的冒號以及下一行的縮進表示一個代碼塊的開始,縮進結束則表示一個代碼塊結束。同一個級別的代碼塊的縮進量必須相同。在IDLE開發(fā)環(huán)境中,基本縮進單位默認為4個空格,也可以自定義基本縮進量,選擇“Options->ConfigureIDLE”選項,在彈出的Settings對話框的“Fonts/Tabs”選項卡中設置基本縮進量2)適當?shù)淖⑨?。注釋是為增強代碼可讀性而添加的描述文字,對程序的執(zhí)行沒有任何影響。主要分為以下兩類注釋。單行注釋:程序中的單行注釋采用“#”開頭,可以從任意位置開始,既可以在語句行末尾、也可以獨立成行。多行注釋:可以使用多個“#”開頭進行多行注釋,也可采用一對三引號將多行注釋字符串括起來。3)清晰的模塊導入。導入模塊時每個import語句導入一個模塊,盡量避免一次導入多個模塊。4)代碼過長折行處理。如果一行語句過長,可以考慮拆分成多個短一些的語句,以保證代碼具有較好的可讀性。也可以在行尾使用續(xù)行符“\”來表示下面緊接的一行仍屬于當前語句,但一般建議使用圓括號來包含多行內(nèi)容。5)必要的空格和空行。最好在每個類、函數(shù)定義和一段完整的功能代碼之后增加一個空行,在運算符兩側各增加一個空格,逗號后面增加一個空格等,以增強程序的可讀性。6)常量名中所有字母大寫,由下劃線連接各個單詞,類名中首字母大寫。變量和簡單數(shù)據(jù)類型本節(jié)介紹Python的標識符變量,基本數(shù)據(jù)類型,數(shù)據(jù)運算符及表達式1.229
1.2.1
標識符和變量標識符標識符在不同的應用環(huán)境下有不同的含義,一般是用于標識某個實體的符號。在計算機編程語言中,標識符是命名變量、函數(shù)等名字的有效字符集合。在Python語言中,包、模塊、類、函數(shù)、變量等的名稱必須為合法有效的標識符。合法的標識符
在Python中,標識符可以包括英文字母、數(shù)字及下劃線,但要符合以下規(guī)則。標識符必須以字母或下劃線開始,不能以數(shù)字開始。標識符區(qū)分英文字母的大小寫。標識符中不能出現(xiàn)分隔符、標點符號或運算符。標識符不能使用關鍵字。最好不要使用內(nèi)置模塊名、類型名、函數(shù)名、已經(jīng)導入的模塊名及其成員名作為標識符。例如,a_int、c_float、_strname為正確的標識符;而100int、yes=no、or為錯誤的標識符。30
關鍵字
關鍵字是預定義的保留標識符。關鍵字有特殊的固定語法含義,不能在程序中被用戶定義為普通標識符,否則將會產(chǎn)生編譯錯誤。Python3的關鍵字如表2-1所示。下劃線標識符通常以下劃線起始的標識符具有特殊意義。以單下劃線起始(_xxx)的標識符代表不能直接訪問的類屬性,需要通過類提供的接口進行訪問,不能用“fromxxximport*”導入。以雙下劃線起始(__xxx)的標識符代表類的私有成員。以雙下劃線起始和結尾(__xxx__)的標識符代表Python中特殊方法專用的標識,如__init__代表類的構造函數(shù)。表2-1Python3關鍵字FalseNoneTrueandasassertasyncawaitbreakclasscontinuedefdelelifelseexceptfinallyforfromglobalifimportinislambdanonlocalnotorpassraisereturntrywhilewithyield31
變量和常量
Python3的對象可分為不可變對象(immutable)和可變對象(mutable)。不可變對象一旦創(chuàng)建,其值在運行中不能被修改,可變對象的值在運行中可以被修改。Python程序中表示數(shù)據(jù)的量可以分為兩種:常量(不可變對象)和變量(可變對象)。常量常量是指在程序執(zhí)行過程中,其值不能發(fā)生改變的量,如3、-6、35.8、"xyz"等。但Python語言不支持常量,即沒有語法規(guī)則限制改變一個常量的值,Python語言只是使用約定,聲明在程序運行中不會改變的變量即為常量,通常使用全部大寫字母(也可使用下劃線增加可讀性)表示常量名。例如,定義PI為常量的語句:>>>PI=3.14。變量變量指在程序執(zhí)行過程中,其值可以發(fā)生改變的量。變量用變量名標識,如x、a1、n等為合法的變量名。在Python中,不需要事先聲明變量名及其類型,直接賦值使用即可根據(jù)變量的值自動創(chuàng)建各種類型的變量。例如,語句“n=5”的功能:Python根據(jù)整數(shù)對象5自動創(chuàng)建了整型變量n,n指向整型對象5,即n賦值為5。32
1.2.2
基本數(shù)據(jù)類型Python語言中提供了幾種數(shù)據(jù)類型,包括數(shù)字(Number)、字符串(String)、列表(List)、元組(Tuple)、集合(Set)、字典(Dictionary)和序列(Sequence)等,下面分別進行介紹。數(shù)字類型數(shù)字屬于Python不可變對象,即修改變量值的時候并不是真的修改變量的值,而是先把值存放到內(nèi)存單元中,然后修改變量使其指向了新的內(nèi)存單元地址。Python中有4種不同的數(shù)字類型,分別是int(整型)、float(浮點型)、bool(布爾型)和complex(復數(shù)型)。整型整型數(shù)字就是沒有小數(shù)部分的數(shù)值,包括正整數(shù)、0和負整數(shù),且無大小限制。整數(shù)可以使用不同的進制來表示。十進制整數(shù)。沒有前綴,其數(shù)碼為0~9,如12、9810、-167。八進制整數(shù)。以0o作前綴,其數(shù)碼為0~7,八進制整數(shù)通常為無符號數(shù),如0o13、0o100、0o2019,其對應的十進制數(shù)分別為11、64和1031。十六進制整數(shù)。以0X或0x作前綴,其數(shù)碼為0~9,A-F或a-f(代表10-15),如0XB4、0xF0、0x34D,其對應的十進制數(shù)分別為180、240和845。33
浮點型浮點型數(shù)字就是包含小數(shù)點的實數(shù),如123.04、0.6789、-9.0909、56.3-e2、3.141e+18、-133.4e78等。布爾型布爾型是用來表示邏輯“是”、“非”的一種類型,只有兩個值,True和False。關于布爾值,Python中規(guī)定:任何對象都可以用來判斷其真假而用于條件、循環(huán)語句或邏輯運算中。對象判斷中None、False、0值(0、0.0、0j)、空的序列值(''、[]、())、空的映射值{}都為False;其他對象值都為True。復數(shù)型復數(shù)由兩部分組成:實部和虛部。復數(shù)的基本形式為:a+bj、a+bJ或complex(a,b)。其中,a是實部,b是虛部。如3.33j、-23-1.12j、-812.j、.156j、(9.19+3e-27j)、-3.12+0J、1.9+e-1j等。字符類型字符串是Python中最常用的數(shù)據(jù)類型,可以使用單引號、雙引號或三引號來創(chuàng)建字符串。如'HelloWorld'、"Python"、'''Yes123'''等。34
序列、列表、元組、集合、字典序列序列是Python中一種最基本的數(shù)據(jù)結構,序列中每個元素都有一個與位置相關的序號,稱為索引。通過索引可以訪問序列元素,從而進行各種處理。列表列表是一種序列類型。用一對方括號“[]”將元素括起來,以逗號進行分隔。列表中元素的類型可以不相同。如[3,5,7.9]、['gkh','yuv',4]、[True,5,7,'cde']等。元組元組也是一種序列類型。用一對圓括號“()”將元素括起來,以逗號隔開,元素類型可相同也可不同。如(2,4,6)、(False,'abc',2)、('gkh','yuv',3.7)等。集合集合是無序但不重復元素的序列。用一對花括號“{}”將元素括起來,以逗號隔開,如{'Tom','Jim','Jack','Luse'}。字典字典是Python中唯一內(nèi)建的映射類型,是一個無序的“鍵:值”對集合,可用來實現(xiàn)通過數(shù)據(jù)查找關聯(lián)數(shù)據(jù)的功能。字典用大括號“{}”來表示,鍵和值之間用冒號隔開。如{'Jack':1134,'Tom':2310,'Luse':6617}。35
1.2.3運算符和表達式在計算機程序中,運算符是表示實現(xiàn)某種運算的符號。表達式是由運算符(操作符)和運算數(shù)(操作數(shù))組成的式子,即操作數(shù)、運算符和圓括號按照一定規(guī)則連接起來組成表達式。運算符表示對操作數(shù)進行何種運算的符號,如+、-、*、/等運算。操作數(shù)包含常量、變量和函數(shù)等。表達式通過運算后產(chǎn)生運算結果,返回結果對象,運算結果對象的類型由操作數(shù)和運算符共同決定。下面分別介紹運算符、表達式及其相關知識。運算符Python語言支持以下類型的運算符:算術運算符、關系(比較)運算符、賦值運算符、邏輯運算符、位運算符、成員運算符、身份運算符。算術運算符算術運算符實現(xiàn)數(shù)學運算,其運算對象通常是數(shù)值型數(shù)據(jù)。Python中的算術運算符如表2-2所示,假設變量x為10,變量y為3。36
算術運算符算術運算符實現(xiàn)數(shù)學運算,其運算對象通常是數(shù)值型數(shù)據(jù)。Python中的算術運算符如表1-2所示,假設變量x為10,變量y為3。表1-2算術運算符運算符示例功能描述運行結果+(加)x+yx與y相加13-(減)x-yx與y相減7*(乘)x*yx與y相乘30/(除)x/yx除以y3.3333333333333335//(整除)x//yx整除y,返回x/y的整數(shù)部分3%(模)x%yx整除y的余數(shù),即x-(x//y)*y的值1-(負號)-xx的負數(shù)-10+(正號)+xx的正數(shù)10**(乘方)x**yx的y次冪100037
關系運算符
關系運算符用于對兩個值進行比較,即對兩個操作數(shù)對象的大小關系進行判斷,運算結果為True(真)或False(假)。Python中的關系運算符如表1-3所示,假設變量x為10,變量y為20。表1-3比較運算符運算符示例功能描述運行結果==(等于)x==y比較兩個對象是否相等False!=(不等于)x!=y比較兩個對象是否不相等True>(大于)x>y返回x是否大于yFalse<(小于)x<y返回x是否小于yTrue>=(大于等于)x>=y返回x是否大于或等于yFalse<=(小于等于)x<=y返回x是否小于或等于yTrue38
賦值運算符賦值運算要求左操作數(shù)對象必須是值可以修改的變量。Python中的賦值運算符如表1-4所示。表1-4賦值運算符運算符示例功能描述=y=x將x的值賦給變量y+=y+=x等價于y=y+x-=y-=x等價于y=y-x*=y*=x等價于y=y*x/=y/=x等價于y=y/x//=y//=x等價于y=y//x%=y%=x等價于y=y%x**=y**=x等價于y=y**x39
邏輯運算符邏輯運算符可以將多個關系運算連接起來,形成更復雜的條件判斷。邏輯運算的運算結果為True(真)或False(假)。Python中的邏輯運算符如表1-5所示。如變量值為數(shù)值型,則0被認為False,其余值均被認為True。表1-5邏輯運算符運算符示例功能描述運行結果and(邏輯與)xandy如果x和y都為True,則返回True;否則,返回FalseTrueor(邏輯或)xory如果x和y都為False,則返回False;否則,返回TrueTruenot(邏輯非)notx如果x為True,則返回False;如果x為False,則返回TrueFalse40
位運算符位運算符只適用于整數(shù),運算規(guī)則是將整數(shù)轉換為二進制形式(注意采用補碼表示),按最低位對齊,缺少的高位補0,然后對二進制數(shù)進行逐位運算,最后將得到的二進制數(shù)據(jù)再轉換為十進制數(shù)。Python中的位運算符如表1-6所示。假設變量x為00000001,變量y為00111101。表1-6位運算符運算符示例功能描述十進制結果二進制結果&(按位與)y&x如果y和x對應位都為1,則結果中該位為1;否則,該位為0100000001|(按位或)y|x如果y和x對應位都為0,則結果中該位為0;否則,該位為16100111101^(按位異或)y^x如果y和x對應位不同,則結果中該位為1;否則,該位為06000111100<<(左移位)y<<x將y左移x位(右側空出的低位補0)1220111
1010>>(右移位)y>>x將y右移x位(左側空出的高位補符號位)3000011110~(按位取反)~x如果x的某位為1,則結果中該位為0;否則,該位為1-21111111041
注意:按位取反時最高位(通常為符號位)也一起變反,因此,正數(shù)按位取反后變成了負數(shù)(符號位0變?yōu)?),而負數(shù)按位取反后變成了正數(shù)(符號位1變?yōu)?)。因此,按位取反的運算規(guī)則是:~0=1,~1=0,對于一個整數(shù)x來說,~x=-(x+1)。例如:以8位二進制位為例計算~5。其計算過程如下:變換為二進制數(shù):(5)10=(00000101)2。按位取反:~5=~(00000101)2=(11111010)2,最高位為1,因此它是一個負數(shù)的二進制補碼形式。轉換為十進數(shù):(11111010)2其對應的原碼是(00000110)2(轉換原則:除符號位外其余各位變反,然后整體加1,得到該整數(shù)的原碼),其對應的十進制整數(shù)為-6。成員運算符成員運算符用于判斷一個可迭代對象(序列、集合或字典)中是否包含某個元素(成員)。Python中的成員運算符如表1-7所示。表1-7成員運算符運算符示例功能描述inxiny如果x是可迭代對象y的一個元素,則返回True;否則,返回Falsenotinxnotiny如果x不是可迭代對象y的一個元素,則返回True;否則,返回False42
身份運算符身份運算符用于比較兩個對象的存儲單元是否相同。Python中的身份運算符如表1-8所示。表達式表達式是將不同類型的數(shù)據(jù)(常量、變量、函數(shù))用運算符按照一定的規(guī)則連接起來的式子。因此,表達式由值、變量和運算符等組成。在一個表達式中,Python會根據(jù)運算符的優(yōu)先級和結合性進行運算。對于具有不同優(yōu)先級的運算符,會先完成高優(yōu)先級的運算,再完成低優(yōu)先級的運算;對于具有相同優(yōu)先級的運算符,其運算順序由結合性來決定。結合性包括左結合和右結合兩種,左結合是按照從左向右的順序完成計算,如1+2+5被計算成(1+2)+5;而右結合是按照從右向左的順序完成計算,如賦值運算符,即x=y=z被處理為x=(y=z)。前面所介紹的各運算符的優(yōu)先級如表2-9所示。優(yōu)先級值越小,表示優(yōu)先級越高。表1-8身份運算符運算符示例功能描述isxisy如果x和y對應同樣的存儲單元,則返回True;否則,返回Falseisnotxisnoty如果x和y不對應同樣的存儲單元,則返回True;否則,返回False43
表1-9運算符優(yōu)先級優(yōu)先級運算符描述1**乘方2~、+、-按位取反、正號、負號3*、/、//、%乘、除、整除、模4+、-加、減5>>、<<右位移、左位移6&按位與7^按位異或8|按位或9>、<、>=、<=、==、!=、is、isnot、in、notin比較運算符、身份運算符、成員運算符10=、+=、-=、*=、/=、//=、%=、**=賦值運算符11not邏輯非12and邏輯與13or邏輯或前面所介紹的各運算符的優(yōu)先級如表2-9所示。優(yōu)先級值越小,表示優(yōu)先級越高。程序結構本節(jié)主要介紹Python的順序結構、分支結構以及循環(huán)結構1.345
1.3.1順序結構順序結構是程序設計中一種最簡單的基本結構,它只需按照問題的處理順序,依次寫出相應的語句,按照語句出現(xiàn)的位置先后次序執(zhí)行。順序結構示意圖如圖1-1所示,依次順序執(zhí)行語句塊1、語句塊2、……、語句塊n等不同的程序塊。其中各語句塊分別代表某些操作。
語句塊1語句塊2……語句塊n圖1-1順序結構示意圖46
1.3.1順序結構
賦值語句賦值語句是任何程序設計語言中最基本的語句。賦值語句的作用就是將值賦給變量,或者說將值傳送到變量所對應的存儲單元中。Python中的賦值與一般程序設計語言的賦值含義不太一樣,并不是將數(shù)據(jù)賦值給變量,而是變量指向某個數(shù)據(jù)值對象。一個變量通過賦值可以指向不同類型的對象。在Python中,通常將“=”稱為賦值號。賦值語句的一般格式為:變量=表達式賦值號左邊必須是變量,右邊是表達式。賦值的意義是先計算右邊表達式的值,然后使該變量指向該數(shù)據(jù)對象。例如:>>>a=2 #變量a賦值為2,即變量a指向數(shù)據(jù)對象2>>>b=5 #變量b賦值為5,即變量b指向數(shù)據(jù)對象5>>>a=b #變量a賦值為b的值(5),即變量a也同時指向數(shù)據(jù)對象547
Python是一種動態(tài)語言,不需要預先定義變量類型,變量類型在賦值時被初始化。例如:>>>a=3 #變量a賦值為整數(shù)3,同時指明變量a為整型變量>>>a='HELLO' #變量a賦值為字符串'HELLO',同時指明變量a為字符型變量Python中的賦值不是直接將值賦給變量,而是將數(shù)據(jù)對象的地址賦值給變量,并且賦值語句不存在返回值,“b=(a=6)+1”是錯誤的寫法,應該寫成>>>a=6>>>b=a+1鏈式賦值語句鏈式賦值語句的一般表達形式為:變量1=變量2=......=變量n=表達式等價于:變量n=表達式......變量1=變量248
例如:>>>a=b=c=d=8 #鏈式賦值>>>a,b,c,d #顯示a,b,c,d的值(8,8,8,8) #a,b,c,d的值均為8同步賦值語句同步賦值語句的一般表達形式為:變量1,變量2,......,變量n=表達式1,表達式2,......,表達式n其中,賦值號左邊變量的個數(shù)與右邊表達式的個數(shù)要一致。先計算右邊表達式的值,然后將各表達式的值賦值按位置給左邊的變量。例如:>>>a,b=2,3 #變量a,b分別指向數(shù)據(jù)2,3>>>a,b #顯示a,b的值(2,3)>>>a,a=2,3 #變量a先指向數(shù)據(jù)2,其后變量a又指向了數(shù)據(jù)3>>>a #顯示a的值49
賦值表達式Python3.8中在賦值中引入了一個新的概念——賦值表達式,采用符號“:=”(稱為海象運算符)進行賦值。賦值表達式可以在統(tǒng)一表達式中賦值并返回值,可以簡化和優(yōu)化程序代碼。例如:>>>print(a:=2) #對變量a賦值2,同時輸出2。功能等價于a=2,print(a)兩條語句21.3.1順序結構50
1.3.1順序結構
程序可以通過鍵盤讀取數(shù)據(jù),也可以通過文件讀取數(shù)據(jù);程序的結果可以輸出在屏幕上,也可以保存在文件中。而標準的輸入是指通過鍵盤讀取數(shù)據(jù),標準的輸出是指將結果顯示在屏幕上。標準輸入輸出51
標準輸入
Python的標準輸入函數(shù)是input()函數(shù),用于讀取用戶在鍵盤上輸入的數(shù)據(jù),并返回一個字符串。其調用格式為:input([字符串])其中,括號里面的“字符串”是可選項,等待用戶輸入數(shù)據(jù)時原樣顯示在屏幕上,一般用于提示用戶輸入數(shù)據(jù),否則屏幕無任何提示信息顯示,只等待用戶輸入數(shù)據(jù)。例如:
>>>a=input('請輸入數(shù)據(jù):')請輸入數(shù)據(jù):31 #屏幕提示:“請輸入數(shù)據(jù):”,并等待用戶輸入數(shù)據(jù)31
>>>a'31'#用戶輸入的數(shù)據(jù)自動默認為字符串input()函數(shù)會自動將輸入的數(shù)據(jù)視為字符串,如果想要輸入數(shù)值數(shù)據(jù),則需使用類型轉換函數(shù)將字符串轉換為數(shù)值。例如:>>>b=int(input()) #將輸入的用戶數(shù)據(jù)轉換為整型66>>>b6652
標準輸出
Python語言的輸出方式有兩種,一種是直接使用表達式輸出該表達式的值,另一種是使用表達式語句輸出。直接使用表達式輸出表達式的值。例如:>>>a,b=1,2>>>a+36 #輸出表達式a+36的值37>>>b+1 #輸出表達式b+1的值3a,b分別賦值為1,2,直接輸出表達式“a+36”的結果為37,表達式“b+1”的結果為3。使用表達式語句輸出。使用表達式語句輸出,常用的輸出方法是用print()函數(shù),其調用格式為:print([輸出項1,輸出項2,......,輸出項n][,sep=分隔符][,end=結束符])其中,輸出項之間以逗號分隔,沒有輸出項時輸出一個空行。sep表示輸出時每個輸出項之間的分隔符(默認空格),end表示結束符(默認回車換行結束)。print()函數(shù)從左到右求的每一個輸出項的值,都依次顯示在同一行。>>>print(1,2)12>>>print(1,2,sep='、')1、2>>>print(1,2,sep='、',end=';')1、2;53
在第三次調用print()函數(shù)時不換行,以“;”作為結束符。例如:print(1,2,end=';')print(2)運行結果如下:12;2標準輸出54
Python程序不需要變量定義,可以直接描述程序的功能。程序的功能一般包括以下3個方面。輸入原始數(shù)據(jù)。根據(jù)問題要求對原始數(shù)據(jù)進行相應處理。輸出處理結果。其中,第二步對數(shù)據(jù)的處理是關鍵。對順序結構程序而言,程序的執(zhí)行是根據(jù)語句出現(xiàn)的順序依次執(zhí)行的。順序結構舉例55
順序結構舉例56
1.3.2
分支結構單分支if語句if語句由4部分組成:關鍵字if、條件表達式、冒號、表達式結果為真(非零、非空)時要執(zhí)行的語句體。if語句的語法格式如下:if條件表達式:語句塊單分支if語句的流程圖如圖1-2所示。單分支if語句先判斷條件表達式的值是真還是假。如果判斷的結果為真(非零、非空),則執(zhí)行語句體中的操作;如果條件表達式的值為假(零、空),則不執(zhí)行語句體中的操作。語句體既可以包含多條語句,也可以只由一條語句組成。圖1-2單分支if語句流程圖語句塊TrueFalse條件表達式57
雙分支if-else語句
雙分支if-else語句的語法格式如下:if條件表達式:語句塊1else:語句塊2雙分支if-else語句的流程圖如圖2-3所示。雙分支if-else語句先判斷條件表達式值的真假。如果條件表達式的結果為真,則執(zhí)行語句體1中的操作;如果條件表達式為假,則執(zhí)行語句體2中的操作。語句體1和語句體2既可以包含多條語句,也可以只由一條語句組成。圖1-3雙分支if-else語句流程圖語句塊1TrueFalse語句塊2條件表達式58
多分支if-elif-else語句多分支if-elif-else語句的語法格式如圖1-4所示:if條件表達式1:語句塊1elif條件表達式2:語句塊2......elif條件表達式n:語句塊nelse:語句塊n+1條件表達式1條件表達式2條件表達式nTrueFalse語句塊nTrueFalse……語句塊n+1語句塊1語句塊2……FalseTrue圖1-4多分支if-elif-else語句流程圖【例1-6】編寫程序,實現(xiàn)從鍵盤輸入兩個整數(shù)a和b,按從大到小順序輸出?!窘狻糠治觯狠斎隺,b,如果a<b,則交換a和b,否則不交換,最后輸出a和b。參考程序如下:a,b=eval(input('請輸入a,b:'))ifa<b:a,b=b,a#a和b交換print('{0},{1}'.format(a,b))程序運行結果如下:請輸入a,b:123,456456,12359
1.3.1順序結構分支結構程序舉例【例1-7】編寫程序,實現(xiàn)從鍵盤輸入年份year,判斷該年份是否為閏年,若是閏年,則輸出“year年是閏年”,否則輸出“year年不是閏年”,其中,year用輸入的年份代替。判斷閏年的方法:如果年份year能被400整除,或者能被4整除但不能被100整除,則該年份為閏年
【解】分析:根據(jù)閏年判斷條件,若滿足:year%400==0或者year%4==0andyear%100!=0則為閏年,否則不是閏年。參考程序如下:importmathyear=input('請輸入年份:')year=int(year)ifyear%400==0or(year%4==0andyear%100!=0):print(year,'年是閏年')else:print(year,'年不是閏年')60
1.3.1順序結構分支結構程序舉例【例1-8】編寫程序,從鍵盤輸入學生成績score,按輸入成績輸出其對應的等級:score≥90為優(yōu),80≤score<90為良,70≤score<80為中等,60≤score<70為及格,score<60為不及格。參考程序如下:score=int(input('請輸入成績'))#int()轉換字符串為整型ifscore>=90:print('優(yōu)')elifscore>=80:print('良')elifscore>=70:print('中')elifscore>=60:print('及格')else:print('不及格')61
1.3.1順序結構分支結構程序舉例運行3次程序,分別輸入年份2000、2013和2020,程序運行結果如下。程序第一次運行結果:請輸入年份:20002000年是閏年程序第二次運行結果:請輸入年份:20132013年不是閏年程序第三次運行結果:請輸入年份:20202020年是閏年62
1.3.1順序結構分支結構程序舉例63
1.3.3循環(huán)結構可迭代對象(iterable)是指執(zhí)行一次可返回一個元素的對象,它適用于循環(huán)。Python中包含的可迭代對象主要有:序列對象(sequence),例如字符串(str)、列表(list)、元組(tuple),字典(dict),文件對象(file),迭代器對象(iterator),生成器函數(shù)(generator)等。迭代器是一個對象,表示可迭代的數(shù)據(jù)集合,包括方法__iter__()和__next__(),可以實現(xiàn)迭代功能。生成器是一個函數(shù),使用yield語句,每次產(chǎn)生一個值,也可以用于循環(huán)迭代。Python3.7中的內(nèi)置對象range是一個迭代器對象,在迭代時產(chǎn)生指定范圍的數(shù)字序列。range的格式如下:range(start,stop[,step])range對象返回的數(shù)字序列范圍是[start,stop),從start開始,stop結束(不包含stop),默認每次迭代步長值為1,如果指定了可選的步長值step,則序列按步長step值增長。例如:foriinrange(1,10):print(i,end='')#range(1,10)產(chǎn)生數(shù)字序列1~9,輸出123456789foriinrange(1,10,3):print(i,end='')#range(1,10,3)產(chǎn)生數(shù)字序列1,4,7,輸出147運行結果如下:123456789147可迭代對象64
>>>print(1,2)12>>>print(1,2,sep='、')1、2>>>print(1,2,sep='、',end=';')1、2;在第三次調用print()函數(shù)時不換行,以“;”作為結束符。例如:print(1,2,end=';')print(2)運行結果如下:12;2又例如:print(1,2)print(1)運行結果如下:12165
循環(huán)語句while循環(huán)語句while語句用于循環(huán)執(zhí)行某段程序,即在某條件成立(為真)下,循環(huán)執(zhí)行某段程序,以重復處理相同的任務。while循環(huán)語句的語法格式如下:while判斷條件:循環(huán)體或:while(判斷條件):循環(huán)體while循環(huán)語句的執(zhí)行過程如下。①執(zhí)行到while語句,計算其后跟著的判斷條件;②如果判斷條件結果為True,則進入循環(huán)體執(zhí)行,當執(zhí)行到循環(huán)體語句序列結束點時返回①繼續(xù)執(zhí)行;③如果判斷條件結果為False,則結束while循環(huán)的執(zhí)行,轉到while語句的后繼語句執(zhí)行。圖1-5while語句的流程圖循環(huán)體TrueFalsewhile語句的后繼語句條件表達式66
循環(huán)語句
for語句for語句用于遍歷可迭代對象集合中的元素,并對集合中的每個元素執(zhí)行一次相關的操作。當集合中的所有元素完成迭代后,for循環(huán)將程序控制傳遞給for循環(huán)之后的下一條語句。for循環(huán)語句的語法格式如下:for變量in序列或可迭代對象循環(huán)體for循環(huán)語句的流程圖如圖1-6所示。for循環(huán)語句的執(zhí)行過程如下。①執(zhí)行到for語句,判斷循環(huán)索引值是否在序列中;②如果該值在序列中,則取出該值,進入循環(huán)體執(zhí)行,循環(huán)體執(zhí)行結束時返回①繼續(xù)執(zhí)行;③如果該值不在序列中,則結束for循環(huán)的執(zhí)行,轉到for循環(huán)后面的語句執(zhí)行。圖1-6for循環(huán)語句的流程圖循環(huán)體TrueFalsefor語句的后繼語句序列(可迭代對象)中還有未訪問元素?【例1-9】編寫程序,利用while循環(huán)求1~100的和、1~100中所有奇數(shù)的和、1~100中所有的偶數(shù)和,并輸出?!窘狻繀⒖汲绦蛉缦拢簊um_all=0 #存放1~100的和sum_odd=0 #存放1~100的奇數(shù)和sum_even=0 #存放1~100的偶數(shù)和i=1whilei<=100:sum_all=sum_all+i #計算所有數(shù)的和if(i%2==0):sum_even+=i #計算1~100的偶數(shù)和else:sum_odd+=i #計算1~100的奇數(shù)和i=i+1print('1~100的和=%d奇數(shù)和=%d偶數(shù)和=%d'%(sum_all,sum_odd,sum_even))程序運行結果如下:1~100的和=5050奇數(shù)和=2500偶數(shù)和=255067
1.3.3循環(huán)結構循環(huán)語句【例1-10】編寫程序,利用for循環(huán)求1~100的和、1~100中所有奇數(shù)的和、1~100中所有偶數(shù)的和,并輸出?!窘狻繀⒖汲绦蛉缦拢簊um_all=0sum_odd=0sum_even=0foriinrange(1,101):sum_all=sum_all+iif(i%2==0):sum_even+=ielse:sum_odd+=iprint('1~100所有數(shù)之和=%d',sum_all)print('1~100的奇數(shù)之和=%d',sum_odd)print('1~100的偶數(shù)之和=%d',sum_even)程序運行結果如下:1~100所有數(shù)之和50501~100的奇數(shù)之和25001~100的偶數(shù)之和255068
1.3.3循環(huán)結構循環(huán)語句69
1.4.3循環(huán)控制語句循環(huán)控制語句可以改變語句執(zhí)行的順序。Python支持break和continue循環(huán)控制語句。break語句break語句的格式如下:breakbreak語句可以用在while和for循環(huán)中,用于提前結束break語句所在的循環(huán),即退出所在循環(huán)的執(zhí)行。例如,在執(zhí)行循環(huán)的過程中,如果某個條件得到了滿足,則可以通過break語句立即終止所在循環(huán)的執(zhí)行。當多個for或while循環(huán)彼此嵌套時,break語句只結束所在層次的循環(huán),例如,如果break在兩層循環(huán)嵌套的內(nèi)層循環(huán)中,則只終止內(nèi)層循環(huán),進入到外層循環(huán)的下一條語句繼續(xù)執(zhí)行。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程環(huán)保合同范本
- 廣東外賣協(xié)議合同
- 兒童英語培訓合同協(xié)議2025年
- 電子商務運營合同協(xié)議2025年
- 2025年張家港市南豐鎮(zhèn)人民醫(yī)院自主招聘編外合同制衛(wèi)技人員備考題庫帶答案詳解
- 2025年廣西北海濱海國家濕地公園管理處聘用人員控制數(shù)招聘備考題庫及一套完整答案詳解
- 2025年彌勒市婦幼保健院公開招聘備考題庫及1套參考答案詳解
- 2025年成都郫都西匯三九八醫(yī)院公開招聘人員備考題庫及1套完整答案詳解
- 甘肅省武威三中教育集團聯(lián)片教研2024-2025學年九年級上學期期末考試物理試題(含答案)
- 2025年上海第九人民醫(yī)院成果轉化辦公室招聘辦公室工作人員備考題庫參考答案詳解
- 2025年滁州市公安機關公開招聘警務輔助人員50人備考題庫及一套參考答案詳解
- 2025年云南省人民檢察院聘用制書記員招聘(22人)備考筆試題庫及答案解析
- 從廢墟到寶庫:熱解技術的飛躍發(fā)展
- 工商銀行貸款合同(標準版)
- 激光切割機日常保養(yǎng)表
- 廣播電視安全播出工作總結
- 熒光腹腔鏡知識培訓總結
- 知道網(wǎng)課《微積分(I)(南昌大學)》課后章節(jié)測試答案
- 暢游黑龍江課件
- 給水工程綜合管廊施工方案
- 人教版五年級數(shù)學上冊第六單元多邊形的面積學業(yè)質量測評卷(含答案)
評論
0/150
提交評論