個(gè)人總結(jié)系列-9Python編程學(xué)習(xí)總結(jié)_第1頁(yè)
個(gè)人總結(jié)系列-9Python編程學(xué)習(xí)總結(jié)_第2頁(yè)
個(gè)人總結(jié)系列-9Python編程學(xué)習(xí)總結(jié)_第3頁(yè)
個(gè)人總結(jié)系列-9Python編程學(xué)習(xí)總結(jié)_第4頁(yè)
個(gè)人總結(jié)系列-9Python編程學(xué)習(xí)總結(jié)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Python編程學(xué)習(xí)總結(jié)EPython語(yǔ)言概述Python就如同一種腳本語(yǔ)言,可以直接在命令行界而運(yùn)行,也可以編寫源程序來(lái)運(yùn)行。下面分別簡(jiǎn)單介紹兩種方式使用Python語(yǔ)言:在命令行模式中,首先輸入“python”后,會(huì)出現(xiàn)“>>>”,提示進(jìn)入Python腳本模式,然后輸入Python語(yǔ)句即可。在源文件模式中,就如同其他語(yǔ)言一樣,在文本文件中編寫代碼,需要注意的是源文件一般以“#!/usr/bin/python”開始,除第一行外其他行可以以“#”作為注釋的開始。下面是一個(gè)簡(jiǎn)單的輸出“helloworld”的Python程丿子的例子:#!/usr/bin/python#Filename:helloworld.pyprint'HelloWorld*Python語(yǔ)言的基礎(chǔ)概念和需要注意的問(wèn)題(1) 程序塊不是以“{”和“}”括起來(lái)來(lái)定義的,而是依據(jù)程序的縮進(jìn)來(lái)表示程序的塊和代碼的層次。(2) 程序以一個(gè)邏輯行尾單位進(jìn)行執(zhí)行,一個(gè)邏輯行可以由多個(gè)物理行組成(通過(guò)\來(lái)連接下一行),一個(gè)物理行可以分成多個(gè)邏輯行(通過(guò)“;”來(lái)分隔同一物理行的多個(gè)邏輯行。但是一般不建議使用丫來(lái)分隔邏輯行,建議使用換行和縮進(jìn)來(lái)組織程序結(jié)構(gòu))(3) 程序中沒(méi)有類似main函數(shù)的主程序,一個(gè)文件中的所有內(nèi)容(代碼)按照行從上到下從左到右執(zhí)行。在文件中有函數(shù),函數(shù)定義部分等到調(diào)用才執(zhí)行。(4) 變量在定義時(shí)沒(méi)有類型,在運(yùn)行期間才去確定數(shù)據(jù)類型。變暈沒(méi)有固定類型,前一次賦值的時(shí)候是什么類型就是什么類型,而且是可以動(dòng)態(tài)變動(dòng)的。var=10.345printtype(var)#<type*float*>var=”hhhhh"printtype(var)#vtype*str*>(5) 函數(shù)定義中沒(méi)有返回值及返回值類型的說(shuō)明,只有函數(shù)名和參數(shù)列表(參數(shù)也沒(méi)有類型,同一函數(shù)在同一程序中可接收不同類型的參數(shù))。如果沒(méi)有返回值則默認(rèn)返回NONE,如果有顯示的return語(yǔ)句,則返回被return的值。(在同一函數(shù),多個(gè)return可以返回不同類型的或不返回)(6) 常用的函數(shù)raw.input(str)函數(shù):接收用戶從控制臺(tái)輸入的數(shù)據(jù),返回一個(gè)字符串。參數(shù)str是提示語(yǔ)句。int(str)等函數(shù):將字符串轉(zhuǎn)換成int類型,可以配合raw_input(str)函數(shù)使用,從用戶輸入獲取int數(shù)據(jù)。len(obj)函數(shù):獲取列表、元組、字典等的長(zhǎng)度,返回長(zhǎng)度的值print函數(shù):打印內(nèi)容到控制臺(tái),可以是數(shù)值、字符串、序列等各種類型。打印完后默認(rèn)是自動(dòng)換行,如果后而接丫則不換行??梢愿袷交址褂茫?(%o、%x)、%f、%s等,如printHthevalueis:%sw%str#str圧一個(gè)變雖,也可以£1接后跟(%"helloM)print"theageis%d,andthenameis%s"%(age,name)#age和name分別足變戢Python中的關(guān)鍵字andAsassertbreakifimportinisclasscontinuedefdellambdanotorpasselifElseexceptexecprintraisereturntryfinallyForfromglobalwhilewithyieldNonePython中的數(shù)據(jù)類型定義時(shí)無(wú)需指明是什么類型,因?yàn)樽冏畹念愋褪莿?dòng)態(tài)變動(dòng)的,但是可以通過(guò)type()函數(shù)查看變最此刻屬于什么類型。數(shù)據(jù)類型描述Number(數(shù)字)包括intjongfloat,double,8mplexString(字符串〉例如:hello/lhelloMlhelloList(列表)例如:[1,2,3],[1,2,3,[1,2.3],4]Dictionary(字典〉例如:{1:MnihaoM12:HhelloH}Tuple(元組)例如:(1t2t3tabc)File(文件〉例如:f=open(a.txtvrw)1?1?2運(yùn)算符包括算術(shù)運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符,需要注意的是:沒(méi)有類似于其他語(yǔ)言中的&&、||、!,而是用and.or.not來(lái)表示。此外,表示平方?!皬S表示除法運(yùn)算,除不盡時(shí)結(jié)果包含小數(shù),如1/3=1.3333333(必須“importdivision*1,不然會(huì)和出發(fā)取整的結(jié)果一樣)?!?/”表示除法取整。其他和C語(yǔ)言中類似。具體的運(yùn)算符及描述如下表:描述運(yùn)畀符描述運(yùn)算符描述x^y.x-yx^y.x-yx*y.x**y.x/y?x%y加、減,?科號(hào)可重載為連接符相乘、求平方、相除、求余,?“號(hào)可重載為重復(fù),"%”號(hào)可重載為格式化v,<=,>?>=t==,<>9|=比較運(yùn)算符門變運(yùn)算符A=.x|y按位或x|y?X按位取反x?.x?yx向左或向右移y位is,isnot等同測(cè)試按位與圧否為成員測(cè)試按位異或按位與圧否為成員測(cè)試or,and,not邏軻運(yùn)算符x(i]?x[i:j]?x.y.x(...)索引,分片,限定引用,函數(shù)調(diào)用(???)■[...]?{???}?*???*元組.列表,字典.轉(zhuǎn)化為字符審in,notin1-1-3控制語(yǔ)句控制語(yǔ)句分別有表示選擇的if語(yǔ)句(if、else、elif),注意沒(méi)有switchcase語(yǔ)句;有表示循環(huán)的while語(yǔ)句,while末尾也有else的可選項(xiàng),但是沒(méi)有dowhilein句:還有表示循環(huán)的fo「語(yǔ)句,fo「末尾也有else的可選項(xiàng),但足fori吾句是forvarinlist類型的語(yǔ)句,而不是像C語(yǔ)言的三段式:在foi?和while語(yǔ)句中還有break語(yǔ)句和continue語(yǔ)句,意義和其他語(yǔ)臺(tái)中一樣。注意在Python中沒(méi)有使用大括號(hào)表示語(yǔ)句塊的方法,而是通過(guò)縮進(jìn)來(lái)表示的。具體的控制語(yǔ)句總結(jié)如下。(1) if條件判斷語(yǔ)句:if、elif、else后而要跟冒號(hào),其中elif和else部分是可選的。語(yǔ)句的格式如下:if條件判斷:語(yǔ)句塊elif條件判斷:語(yǔ)句塊else:語(yǔ)句塊while循環(huán)語(yǔ)句:注意while后而跟冒號(hào),else部分可選while條件判斷:語(yǔ)句塊(可以包含break或continue>else:語(yǔ)句塊for循環(huán)語(yǔ)句:else部分可選forvarin序列語(yǔ)句塊(可以包會(huì)break或continue)else:語(yǔ)句塊函數(shù)定義的格式如下圖所示:deffunctionname(arg1targ2t?..,argn):語(yǔ)句塊函數(shù)定義沒(méi)有返回值的說(shuō)明,但是可以使用return語(yǔ)句返回一個(gè)值,如果在函數(shù)中有多個(gè)return語(yǔ)句,那么返回值類型可以不同,如果沒(méi)有return語(yǔ)句,默認(rèn)是返回None。函數(shù)的參數(shù)列表也只有形參爼稱,而沒(méi)有形參的類型,具體的類型根據(jù)運(yùn)行時(shí)動(dòng)態(tài)確定,在同一程序中,可以給同一函數(shù)傳遞不同類型的參數(shù)來(lái)調(diào)用這個(gè)函數(shù)。注意函數(shù)定義時(shí)后面跟“:”。函數(shù)調(diào)用的形式為functionname(arg1,arg2, argn)。默認(rèn)參數(shù):在函數(shù)定義時(shí)指定參數(shù)的值,則在調(diào)用時(shí),這些參數(shù)的值可以不給定,而山接根據(jù)定義時(shí)給定的值默認(rèn)。如defS2y(mGSS3ge,times=4):,那么在調(diào)用時(shí)可以直接say(“hell?!?或say(“hello”,5)。如果沒(méi)有指定times的值的話就將該值默認(rèn)為1o默認(rèn)參數(shù)必須在非默認(rèn)參數(shù)之后,由于調(diào)用時(shí)參數(shù)個(gè)數(shù)不確定,因此按照順序依次給各參數(shù)賦值,沒(méi)有被賦值的后而的默認(rèn)參數(shù)就被賦值為默認(rèn)值。只有在形參表末尾的那些參數(shù)可以有默認(rèn)參數(shù)值,即你不能在聲明函數(shù)形參的時(shí)候,先聲明有默認(rèn)值的形參而后聲明沒(méi)有默認(rèn)值的形參。這是因?yàn)橘x給形參的值是根據(jù)位置而賦值的。例如,deffunc(a,b=5)是有效的,但是deffunc(a=5,b)是無(wú)效的。7?7?5橫塊模塊基本上就是一個(gè)包含了所有你定義的函數(shù)和變量的文件。為了在其他程序中重用模塊,模塊的文件名必須以.py為擴(kuò)展名。使用模塊時(shí)引用模塊就行了,通過(guò)語(yǔ)句import或from import……。如果你想要輸入所有sys模塊使用的需字,那么你可以使用fromsysimport*語(yǔ)句。比如有一個(gè)模塊被寫在mou.py中,在程序testmou.py中要用模塊,你需要通過(guò)“importmou”語(yǔ)句導(dǎo)入模塊,注意“.py”不用寫。假如mou.py中定義了一個(gè)變量和一個(gè)函數(shù)分別叫var和fun(),通過(guò)上面的import語(yǔ)句導(dǎo)入模塊mou之后你可以通過(guò)語(yǔ)句“mou.var”和“mou.fun()”來(lái)調(diào)用其中的變量和函數(shù)。如果你想導(dǎo)入mou中的所有變星和函數(shù),則可以使用l,frommouimport*M來(lái)導(dǎo)入,這樣導(dǎo)入的方式使得使用時(shí)就不需要模塊名來(lái)引用變量和函數(shù),直接使用。如果你只想導(dǎo)入mou中的fun()函數(shù),則可以使用“frommouimportfun'HS句來(lái)導(dǎo)入,使用時(shí)就不需要模塊名了,直接使用fun()函數(shù)。Python中有許多標(biāo)準(zhǔn)庫(kù)模塊,是語(yǔ)言自帶的一些模塊,也可以自定義自己的模塊。標(biāo)準(zhǔn)庫(kù)模塊常用的有sys、os、re、time等。白定義時(shí)就和半常寫python—樣,一個(gè).py結(jié)尾的文件就是一個(gè)模塊。注意:導(dǎo)入某模塊時(shí),該模塊的主塊將被運(yùn)行,無(wú)論是導(dǎo)入全部還是導(dǎo)入該模塊的某一個(gè)變量或函數(shù)。1?1?6數(shù)據(jù)結(jié)構(gòu)具體的數(shù)據(jù)類型在3.2.1Python語(yǔ)言概述中有詳細(xì)的列舉,其他的也很簡(jiǎn)單,和其他語(yǔ)言的數(shù)據(jù)類型差不多,本節(jié)主要介紹一些Python語(yǔ)言特有的一些數(shù)據(jù)結(jié)構(gòu)。主要的數(shù)據(jù)結(jié)構(gòu)是列表、元組、字典、序列。下面分別簡(jiǎn)單總結(jié)一下。列表特點(diǎn):列表是可變的,可以刪除、排序、追加(列表中的列表也不會(huì)失去它的身份) 舉例:shoplist=「apple;*mango;'carrot',*banana]元組特點(diǎn):元組是不可變的。元組和列表十分類似,只不過(guò)元組和字符串一樣是不可變的,即你不能修改元組。元組通過(guò)圓括號(hào)中用逗號(hào)分割的項(xiàng)目定義。元組通常用在使語(yǔ)句或用戶定義的函數(shù)能夠安全地采用一組值的時(shí)候,即被使用的元組的值不會(huì)改變。注意元組之內(nèi)的元組不會(huì)失去它的身份。含有0個(gè)或1個(gè)項(xiàng)目的元組。一個(gè)空的元組由一對(duì)空的圓括號(hào)組成,如myempty=()。然而,含有單個(gè)元素的元組就不那么簡(jiǎn)單了°你必須在第一個(gè)(唯一一個(gè))項(xiàng)冃后跟一個(gè)逗號(hào),如singleton=(2,)。舉例:shoplist=Cappie:'mango*,'carrot*.*banana)字典特點(diǎn):字典就是類似于map,是以鍵?值對(duì)的形式存在的,鍵值對(duì)在字典中以這樣的方式標(biāo)記:d={key1:valuel,key2:value2}。鍵/值對(duì)用冒號(hào)分割,而各個(gè)對(duì)用逗號(hào)分割,所有這些都包括在花括號(hào)中。舉例:stu={1:1i',2:*wang*,3:zhang*}序列列表、元組和字符串都是序列,序列的兩個(gè)主要特點(diǎn)是索引操作符和切片操作符。索引操作符讓我們可以從序列中抓取一個(gè)特定項(xiàng)目。切片操作符讓我們能夠獲取序列的一個(gè)切片,即一部分序列。以列表為例.一個(gè)list定義為:shoplist=fapple^*mango\'carrot*,'banana*]Shoplist[0]為shoplist[-1]為bananashoplist[0:2]為['apple;'mango*]索引同樣可以是負(fù)數(shù),在那樣的情況下,位置是從序列尾開始計(jì)算的。因此shoplist[?1]表示庫(kù)列的最后一個(gè)元素而

溫馨提示

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

評(píng)論

0/150

提交評(píng)論