Python的基本語法全套_第1頁
Python的基本語法全套_第2頁
Python的基本語法全套_第3頁
Python的基本語法全套_第4頁
Python的基本語法全套_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Python的基本語法注釋注釋是#符號(hào)右側(cè)的任何文本,主要用作程序讀者的注釋。比如:或者:在程序中要使用盡可能多的有用注釋:解釋假設(shè)(或者前提/條件)解釋重要的決定解釋重要的細(xì)節(jié)解釋你想要解決的問題解釋你在程序中試圖克服的問題,等等。代碼告訴你方式,注釋告訴你原因!這對程序的讀者非常有用,這樣他們就可以很容易地理解程序正在做什么。請記住,在六個(gè)月之后,讀者可能就是你自己!文字常量一個(gè)文字常量的例子是一個(gè)數(shù)字,如,5、1.23;或者是一個(gè)字符串,如,'Thisisastring'或"It'sastring!"。它被稱為文字,是因?yàn)樗俏淖值摹闶褂玫氖撬淖置嫔系闹?。?shù)字2就是代表它自己,而不代表其它——它是一個(gè)常量,因?yàn)樗闹挡荒芨淖?。因此,所有這些都被稱為文字常量。數(shù)字?jǐn)?shù)字主要有兩種類型——整數(shù)和浮點(diǎn)數(shù)。整數(shù)的一個(gè)例子是2,它只是一個(gè)整數(shù)。浮點(diǎn)數(shù)(floatingpointnumbers,或者簡稱為floats)的例子有3.23和52.3E-4。其中,E表示10的冪。在這種情況下,52.3E-4就等于52.3*10^-4。經(jīng)驗(yàn)豐富的程序員的注意事項(xiàng)沒有單獨(dú)的long類型。int類型可以是任意大小的整數(shù)。字符串字符串是字符的序列。字符串本質(zhì)上就是一堆單詞。在Python程序中,字符串基本上是無處不在,所以一定要注意下面的內(nèi)容。單引號(hào)你可以用單引號(hào)指定字符串,如'Quotemeonthis'。所有的空格,即引號(hào)內(nèi)的空格和制表符,均保持原樣。雙引號(hào)雙引號(hào)中的字符串與單引號(hào)中的字符串完全相同。如,"What'syourname?"。三引號(hào)你可以使用三引號(hào)——("""或''')指定多行字符串。你可以在三引號(hào)中自由地使用單引號(hào)和雙引號(hào)。例如:字符串是不可改變的這就意味著,一旦你創(chuàng)建了一個(gè)字符串,你就不能再改變它了。盡管這看上去不是什么好事,但是事實(shí)卻恰恰相反。在接下來的各種程序中,我們將會(huì)了解到為什么這不是一個(gè)限制。C/C++程序員請注意在Python中,沒有單獨(dú)的char數(shù)據(jù)類型。根本就沒有必要擁有單獨(dú)的char數(shù)據(jù)類型,并且我保證,你不會(huì)對它心心念念的。Perl/PHP程序員請注意要記住,單引號(hào)字符串和雙引號(hào)字符串是相同的——他們沒有任何區(qū)別。format方法有時(shí)候我們可能想從其它信息中構(gòu)造字符串。這就是format()方法可以發(fā)揮作用的地方。將下面幾行內(nèi)容保存為str_format.py文件:輸出:它是如何工作的字符串可以使用某些規(guī)范(這里的規(guī)范,類似于標(biāo)簽),然后可以調(diào)用format方法,用format方法的相關(guān)參數(shù)替換這些規(guī)范??匆幌挛覀兊谝淮问褂脅0}的地方,它對應(yīng)于變量name,這是format方法的第一個(gè)參數(shù)。類似地,第二個(gè)規(guī)范是{1},對應(yīng)于age,這是format方法的第二個(gè)參數(shù)。注意,Python從0開始計(jì)數(shù),這就意味著第一個(gè)位置的索引號(hào)是0,第二個(gè)位置的索引號(hào)是1,依次類推。注意,我們也可以使用字符串連接實(shí)現(xiàn)相同的效果:但是,這樣長得太難看,更容易出錯(cuò)。其次,對字符串的轉(zhuǎn)換,通過format方法可以自動(dòng)完成,而不像在本例中一樣需要顯式地轉(zhuǎn)換為字符串。第三,當(dāng)使用format方法時(shí),我們可以更改消息,而不需要處理使用的變量,反之亦然。還要注意一點(diǎn),這些數(shù)字是可選的,可填可不填,所以你也可以這樣寫:這里的輸出和前一個(gè)程序的輸出完全相同。在format方法中,Python所做的事是將每個(gè)參數(shù)值替換到指定的位置??梢杂懈釉敿?xì)的規(guī)范,例如:輸出:由于我們正在討論的是格式,要注意print總是以一個(gè)不可見的「新的一行」字符(\n)作為結(jié)尾,因此對print的重復(fù)調(diào)用將在每個(gè)單獨(dú)的行上打印輸出。為了防止這個(gè)換行符被打印輸出,你可以指定它以一個(gè)空(即,什么都沒有)作為end:輸出為:或者你可以用空格作為end:輸出為:轉(zhuǎn)義序列假如,你想要一個(gè)字符串含有一個(gè)單引號(hào)('),那該怎么辦?例如,字符串是"What'syourname?"。你不能直接用'What'syourname?'因?yàn)镻ython會(huì)混淆字符串的起始和結(jié)尾位置。因此,你必須指定這個(gè)單引號(hào)不是代表字符串的結(jié)尾。這可以通過所謂的轉(zhuǎn)義序列來實(shí)現(xiàn)。你可以將單引號(hào)指定為\':注意是反斜杠?,F(xiàn)在,你可以將字符串指定為'What\'syourname?'。指定特殊字符串的另一個(gè)方法是"What'syourname?"即,使用雙引號(hào)。類似地,要想在雙引號(hào)字符串中使用雙引號(hào)本身,仍然必須要使用轉(zhuǎn)移序列。另外,只能使用轉(zhuǎn)移序列\(zhòng)表示反斜杠本身。如果你想要指定兩行字符串呢?一種方法是使用前面所示的三引號(hào)字符串,或者你可以對換行符\n使用轉(zhuǎn)義序列來表示開始新的一行。比如:另一個(gè)非常有用的轉(zhuǎn)移序列是制表符:\t。還有很多其它的轉(zhuǎn)義序列,但我在這里只提到了最有用的幾個(gè)轉(zhuǎn)移序列。需要注意的一點(diǎn)是,在字符串中,行末尾的單個(gè)反斜杠表示字符串在下一行中繼續(xù),但不添加換行符。例如:等價(jià)與:原始字符串如果你需要指定一些沒有特殊處理(轉(zhuǎn)義序列等)的字符串,那么你需要指定一個(gè)原始字符串,指定方法是在字符串前面加上r或者R。例如:正則表達(dá)式的用戶請注意在處理正則表達(dá)式時(shí),我們一般使用原始字符串。否則,可能需要進(jìn)行大量的反向操作。例如,可以用'\1'或r'\1'進(jìn)行反向引用。變量僅僅使用文字常量的話,很快就會(huì)變得枯燥乏味——我們需要某種方法來存儲(chǔ)和操作任何信息。這就是變量出現(xiàn)的原因。變量,正如這個(gè)名字所暗示的——它們的值可以變化,即,你可以使用變量存儲(chǔ)任何內(nèi)容。變量只是存儲(chǔ)信息的計(jì)算機(jī)內(nèi)存當(dāng)中的一部分。和文字常量不同的是,你需要一些方法來訪問這些變量,因此你需要為它們命名。標(biāo)識(shí)符命名變量是標(biāo)識(shí)符的例子。標(biāo)識(shí)符是用來標(biāo)識(shí)某事物的名稱。在命名標(biāo)識(shí)符的時(shí)候必須遵循一些規(guī)則:標(biāo)識(shí)符的第一個(gè)字符必須是字母(大寫ASCII或小寫ASCII或Unicode字符)或者下劃線(_)。標(biāo)識(shí)符的其余部分可以由字母、下劃線(_)或者數(shù)字(0-9)組成。標(biāo)識(shí)符的名稱區(qū)分大小寫。例如,myname和myName是不相同的。注意前者中的小寫n和后者中的大寫N。有效標(biāo)識(shí)符名稱的例子有i、name_2_3。無效標(biāo)識(shí)符名稱的例子有2things、thisisspacedout、my-name以及>a1b2_c3。數(shù)據(jù)類型變量可以保存不同類型(數(shù)據(jù)類型)的值?;绢愋褪菙?shù)字和字符串,我們已經(jīng)討論過了。在后面的章節(jié)中,我們將看到如何使用創(chuàng)建自己的類型。對象記住,在Python中,一切皆對象。這意味著一般情況下,在Python中,我們不會(huì)說「某物」而是說「對象」。面向?qū)ο缶幊痰某绦騿T請注意:從某種意義上說,Python的面向?qū)ο笫欠浅<兇獾?,因?yàn)橐磺薪詫ο?,包括?shù)字、字符串和函數(shù)?,F(xiàn)在我們來看一下,如何使用變量和文字常量。請保存下面的例子并且運(yùn)行程序。如何編寫Python程序?此后,保存和運(yùn)行Python程序的標(biāo)準(zhǔn)流程如下:對于PyCharm打開.用之前提到的文件名創(chuàng)建新的文件。輸入例子中給出的程序代碼。右擊并運(yùn)行當(dāng)前文件。注意:當(dāng)你需要提供時(shí),點(diǎn)擊Run(運(yùn)行)->EditConfigurations(編輯配置)然后在Scriptparameters:(腳本參數(shù))部分中鍵入?yún)?shù),然后點(diǎn)擊OK(確定)按鈕:對于其它的編輯器打開你選擇的編輯器。鍵入例子中給出的程序代碼。將文件保存為前面提到的文件名。在解釋器中運(yùn)行命令pythonprogram.py,以此運(yùn)行程序。例子:使用變量和文字常量鍵入并運(yùn)行下面的程序:輸出:它是如何工作的下面是這個(gè)程序的工作原理。首先,我們使用賦值運(yùn)算符(=)將常量5賦值給變量i。這一行我們稱之為(陳述)語句,因?yàn)樗愂隽诵枰瓿梢恍┦虑?,在本例中,我們將變量名i與值5連接起來。接下來,我們使用print語打印輸出i的值,不言而喻,它會(huì)將變量的值打印輸出到屏幕上。然后,我們令i中的值加1,并將新值保存到i中。然后我們打印輸出i,不出意外的話,我們會(huì)得到6。同樣,我們也可以將文本字符串賦值給變量s然后將其打印輸出。靜態(tài)語言程序員請注意變量可以直接通過賦值來使用。不需要任何聲明或者數(shù)據(jù)類型定義。邏輯行和物理行物理行是當(dāng)你寫程序的時(shí)候,你眼睛看到的行。邏輯行是Python看到的一個(gè)程序語句。Python默認(rèn)每一個(gè)物理行對應(yīng)一個(gè)邏輯行。一個(gè)邏輯行的一個(gè)例子就是一個(gè)語句,如print'helloworld'——如果這是單獨(dú)一行(正如你在編輯器中看到的那樣),那么這也對應(yīng)于一個(gè)物理行。默認(rèn)情況下,Python推薦一行一個(gè)語句,這會(huì)使代碼更具有可讀性。如果你希望在單個(gè)物理行中編寫更多的邏輯行,則必須使用分號(hào)(;)顯式地指定此邏輯行/此語句的結(jié)尾。例如:實(shí)際上,這等價(jià)于也等價(jià)于等價(jià)于然而,我強(qiáng)烈建議你堅(jiān)持一行最多一個(gè)語句,不要使用分號(hào)。事實(shí)上,我從來沒有在Python程序中使用過或看到過分號(hào)。在某種情況下,這個(gè)觀念非常有用,如:有一行很長的代碼,你可以使用反斜杠將其分解為多個(gè)物理行。我們稱之為顯式行連接:輸出:同樣:等價(jià)于有時(shí)候,有一種隱含的假設(shè),你不需要使用反斜杠。在這種情況下,邏輯行有開始括號(hào)、開始方括號(hào)或者開始花括號(hào),但是沒有結(jié)束括號(hào)。我們稱之為隱式行連接。在后面的章節(jié)中,當(dāng)我們使用list(列表)編程時(shí),你就可以看到這一點(diǎn)??s進(jìn)空格在Python中非常重要。實(shí)際上,行首的空格非常重要。這就是所謂的縮進(jìn)。邏輯行開頭的前導(dǎo)空格(空格和制表符)用于確定邏輯行的縮進(jìn)級別,然后用于確定語句的分組。這就意味著同一組的語句必須有相同的縮進(jìn)。每一個(gè)這樣的語句集被稱為語句塊。我們將在后面章節(jié)中的例子中看到語句塊有多么重要。需要牢記的一件事情是,錯(cuò)誤的縮進(jìn)會(huì)導(dǎo)致報(bào)錯(cuò)。例如:當(dāng)你運(yùn)行該程序時(shí),你會(huì)得到下面的錯(cuò)誤:注意,第二行的開頭處有一個(gè)空格。Python指示的錯(cuò)誤告訴我們,程序的語法無效,即程序沒有按照正確的語法規(guī)則編寫。對你來講,這意味著你不能隨意開始一個(gè)

溫馨提示

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

最新文檔

評論

0/150

提交評論