Python 基礎(chǔ)語法

第一個(gè)Python程序

交互式編程

交互式編程不需要?jiǎng)?chuàng)建腳本文件,是通過 Python 解釋器的交互模式進(jìn)來編寫代碼。

linux上你只需要在命令行中輸入 Python 命令即可啟動(dòng)交互式編程,提示窗口如下:

$ python

Python 2.7.6 (default, Sep? 9 2014, 15:04:36)

[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>>

Window上在安裝Python時(shí)已經(jīng)已經(jīng)安裝了默認(rèn)的交互式編程客戶端,提示窗口如下:

python-shell

在 python 提示符中輸入以下文本信息,然后按 Enter 鍵查看運(yùn)行效果:

>>> print "Hello, Python!";

在 Python 2.7.6 版本中,以上事例輸出結(jié)果如下:

Hello, Python!

如果您運(yùn)行的是新版本的Python,那么你就需要在print語句中使用括號如:

>>>? print ("Hello, Python!");

腳本式編程

通過腳本參數(shù)調(diào)用解釋器開始執(zhí)行腳本,直到腳本執(zhí)行完畢。當(dāng)腳本執(zhí)行完成后,解釋器不再有效。

讓我們寫一個(gè)簡單的Python腳本程序。所有Python文件將以.py為擴(kuò)展名。將以下的源代碼拷貝至test.py文件中。

print "Hello, Python!";

這里,假設(shè)你已經(jīng)設(shè)置了Python解釋器PATH變量。使用以下命令運(yùn)行程序:

$ python test.py

輸出結(jié)果:

Hello, Python!

讓我們嘗試另一種方式來執(zhí)行Python腳本。修改test.py文件,如下所示:

#!/usr/bin/python

print "Hello, Python!";

這里,假定您的Python解釋器在/usr/bin目錄中,使用以下命令執(zhí)行腳本:

$ chmod +x test.py? ? # 腳本文件添加可執(zhí)行權(quán)限

$./test.py

輸出結(jié)果:

Hello, Python!

Python 標(biāo)識符

在python里,標(biāo)識符有字母、數(shù)字、下劃線組成。

在python中,所有標(biāo)識符可以包括英文、數(shù)字以及下劃線(_),但不能以數(shù)字開頭。

python中的標(biāo)識符是區(qū)分大小寫的。

以下劃線開頭的標(biāo)識符是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進(jìn)行訪問,不能用"from xxx import *"而導(dǎo)入;

以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結(jié)尾的(__foo__)代表python里特殊方法專用的標(biāo)識,如__init__()代表類的構(gòu)造函數(shù)。

Python保留字符

下面的列表顯示了在Python中的保留字。這些保留字不能用作常數(shù)或變數(shù),或任何其他標(biāo)識符名稱。

所有Python的關(guān)鍵字只包含小寫字母。

and exec not

assert finally or

break for pass

class from print

continue global raise

def if return

del import try

elif in while

else is with?

except lambda yield

行和縮進(jìn)

學(xué)習(xí)Python與其他語言最大的區(qū)別就是,Python的代碼塊不使用大括號({})來控制類,函數(shù)以及其他邏輯判斷。python最具特色的就是用縮進(jìn)來寫模塊。

縮進(jìn)的空白數(shù)量是可變的,但是所有代碼塊語句必須包含相同的縮進(jìn)空白數(shù)量,這個(gè)必須嚴(yán)格執(zhí)行。如下所示:

if True:

? ? print "True"

else:

? print "False"

以下代碼將會執(zhí)行錯(cuò)誤:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

# 文件名:test.py

if True:

? ? print "Answer"

? ? print "True"

else:

? ? print "Answer"

? ? # 沒有嚴(yán)格縮進(jìn),在執(zhí)行時(shí)保持

? print "False"

$ python test.py?

? File "test.py", line 5

? ? if True:

? ? ^

IndentationError: unexpected indent

IndentationError: unexpected indent 錯(cuò)誤是python編譯器是在告訴你"Hi,老兄,你的文件里格式不對了,可能是tab和空格沒對齊的問題",所有python對格式要求非常嚴(yán)格。

如果是 IndentationError: unindent does not match any outer indentation level錯(cuò)誤表明,你使用的縮進(jìn)方式不一致,有的是 tab 鍵縮進(jìn),有的是空格縮進(jìn),改為一致即可。

因此,在Python的代碼塊中必須使用相同數(shù)目的行首縮進(jìn)空格數(shù)。

建議你在每個(gè)縮進(jìn)層次使用 單個(gè)制表符 或 兩個(gè)空格 或 四個(gè)空格 , 切記不能混用

多行語句

Python語句中一般以新行作為為語句的結(jié)束符。

但是我們可以使用斜杠( \)將一行的語句分為多行顯示,如下所示:

total = item_one + \

? ? ? ? item_two + \

? ? ? ? item_three

語句中包含[], {} 或 () 括號就不需要使用多行連接符。如下實(shí)例:

days = ['Monday', 'Tuesday', 'Wednesday',

? ? ? ? 'Thursday', 'Friday']

Python 引號

Python 接收單引號(' ),雙引號(" ),三引號(''' """) 來表示字符串,引號的開始與結(jié)束必須的相同類型的。

其中三引號可以由多行組成,編寫多行文本的快捷語法,常用語文檔字符串,在文件的特定地點(diǎn),被當(dāng)做注釋。

word = 'word'

sentence = "這是一個(gè)句子。"

paragraph = """這是一個(gè)段落。

包含了多個(gè)語句"""

Python注釋

python中單行注釋采用 # 開頭。

#!/usr/bin/python

# -*- coding: UTF-8 -*-

# 文件名:test.py

# 第一個(gè)注釋

print "Hello, Python!";? # 第二個(gè)注釋

輸出結(jié)果:

Hello, Python!

注釋可以在語句或表達(dá)式行末:

name = "Madisetti" # 這是一個(gè)注釋

python 中多行注釋使用三個(gè)單引號(''')或三個(gè)單引號(""")。

#!/usr/bin/python

# -*- coding: UTF-8 -*-

# 文件名:test.py

'''

這是多行注釋,使用單引號。

這是多行注釋,使用單引號。

這是多行注釋,使用單引號。

'''

"""

這是多行注釋,使用雙引號。

這是多行注釋,使用雙引號。

這是多行注釋,使用雙引號。

"""

Python空行

函數(shù)之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數(shù)入口之間也用一行空行分隔,以突出函數(shù)入口的開始。

空行與代碼縮進(jìn)不同,空行并不是Python語法的一部分。書寫時(shí)不插入空行,Python解釋器運(yùn)行也不會出錯(cuò)。但是空行的作用在于分隔兩段不同功能或含義的代碼,便于日后代碼的維護(hù)或重構(gòu)。

記?。嚎招幸彩浅绦虼a的一部分。

等待用戶輸入

下面的程序在按回車鍵后就會等待用戶輸入:

#!/usr/bin/python

raw_input("\n\nPress the enter key to exit.")

以上代碼中 ,"\n\n"在結(jié)果輸出前會輸出兩個(gè)新的空行。一旦用戶按下鍵時(shí),程序?qū)⑼顺觥?/p>

同一行顯示多條語句

Python可以在同一行中使用多條語句,語句之間使用分號(;)分割,以下是一個(gè)簡單的實(shí)例:

import sys; x = 'foo'; sys.stdout.write(x + '\n')

多個(gè)語句構(gòu)成代碼組

縮進(jìn)相同的一組語句構(gòu)成一個(gè)代碼塊,我們稱之代碼組。

像if、while、def和class這樣的復(fù)合語句,首行以關(guān)鍵字開始,以冒號( : )結(jié)束,該行之后的一行或多行代碼構(gòu)成代碼組。

我們將首行及后面的代碼組稱為一個(gè)子句(clause)。

如下實(shí)例:

if expression :

? suite

elif expression :?

? suite?

else :?

? suite

命令行參數(shù)

很多程序可以執(zhí)行一些操作來查看一些基本信,Python可以使用-h參數(shù)查看各參數(shù)幫助信息:

$ python -h

usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...

Options and arguments (and corresponding environment variables):

-c cmd : program passed in as string (terminates option list)

-d? ? : debug output from parser (also PYTHONDEBUG=x)

-E? ? : ignore environment variables (such as PYTHONPATH)

-h? ? : print this help message and exit

[ etc. ]

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容