1. 程式人生 > >[python]詞匯和語法

[python]詞匯和語法

com 三種 als 斜杠 分別是 進制 二進制 空白行 語法

1. 行結構和縮進

程序中的每條語句都以換行符結束。可以使用續行符"\"將長語句分為幾行,例如:

a = math.cos(3 * (x - n)) +             math.sin(3 * y - n)

使用三引號定義的字符串、列表、元組或字典分布在多行上時,不需要使用續行符。縮進用於表示不同的代碼塊,如函數體、條件語句、循環和類。代碼塊中首條語句的縮進量可以是任意的,但整個代碼塊中的縮進必須保持一致。
要在一行上放置多條語句,可以使用分號";"隔開。除非是在交互模式下運行,否則解釋器將忽略所有空白行。

2. 標識符和保留字

標識符是識別變量、函數、類、模塊和其他對象的名稱。標識符可以包含字母、數字和下劃線,但必須以非數字字符開始,並且區分大小寫。另外,像if、else和for這樣的單詞是保留字,也不能用作標識符名稱。

以下劃線開始或結束的標識符通常具有特殊含義。比如以一個下劃線開始的標識符不能使用from module import *語句導入,前後均帶有雙下劃線的標識符是為特殊方法保留的,前面帶有雙下劃線的標識符則用於實現私有的類成員。

3. 數字字面量

內置的數字字面量分為4種類型:布爾值、整數、浮點數和復數。標識符True和False被解釋為布爾值,其整數值分別是1和0。像123這樣的數字被解釋為十進制數。要使用八進制、十六進制或二進制指定整數,可以在值的前面分別加上0、0x或0b。
在Python中,整數的位數是任意的,所以如果要指定一個非常大的整數,只需寫出所有位數。老的代碼可能會看到數字後面加上l或L,選擇將整數內部表示為固定精度的機器整數或任意精度的長整數類型,如今已無必要。

像123.4和1.23e+02這樣的數字被解釋為浮點數。整數或浮點數後面加上j或J就構成了虛數,如12.34J,一個實數加上一個虛數就構成了復數。

4. 字符串字面量

字符串字面量是用於指定一個字符序列,其定義方法是把文本放入單引號" ‘ ",雙引號" " ",或三引號" ‘‘‘ "或 " """ "中。這三種引號形式在語義上沒有分別。三引號的字符串可以分布在多行上並包括所有格式符號(換行符、制表符、空格等)在內。
反斜杠" \ "字符用於轉義特殊字符,如換行符、反斜杠本身、引號和非打印字符。另外,可以在字符串字面量前加上r或R,如r‘\d‘。這些字符串稱為原始字符串,因為其中所有的轉義字符都會原封不動的保留。原始字符串不能以單個反斜杠結尾,如r"\"。

5. 容器

將一些值放在方括號"[ ... ]"、圓括號"( ... )"和花括號"{ ... }"內,可分別表示一個列表、元組和字典中包含的對象集合。

6. 運算符、分隔符及特殊符號

Python可以識別的運算符有:+、-、*、*、/、//、%、<<、>>、&、|、^、~、<、>、<=、>=、==、!=、<>、+=、-=、=、/=、//=、%=、*=、&=、|=、^=、>>=、<<=。以下標記可以用作表達式、列表、字典和語句不同部分的分隔符:(、)、[、]、{、}、,、:、.、`、=、;。
$和?在Python中沒有任何意義,不能出現在程序中,但可以出現在引號中的字符串字面量中。

7. 文檔字符串

如果模塊、類或函數定義的第一條語句是一個字符串,該字符串就成為了相關對象的文檔字符串,例如:

def fact(n):
    "This function computes a factorial"
    if (n <= 1): return 1
    else: return n * fact(n-1)

代碼瀏覽工具和文檔生成工具有時會用到文檔字符串。通過對象的__doc__屬性可以訪問文檔字符串。

8. 裝飾器

函數、方法或類定義的前面可以使用一個特殊的符號,稱為裝飾器,其目的是修改定義後面的行為。裝飾器使用"@"符號表示,必須放在單獨的行上並且位於對應的函數、方法或類之前,例如:

@staticmethod
def bar():
    pass

[python]詞匯和語法