標(biāo)識(shí)符是允許作為變量(函數(shù)、類等)名稱的有效字符串。其中,有一部分是關(guān)鍵字(語言本身保留的標(biāo)識(shí)符),它是不能做它用的標(biāo)識(shí)符的,否則會(huì)引起語法錯(cuò)誤(SyntaxError 異常)。Python 還有稱為 built-in 標(biāo)識(shí)符集合,雖然它們不是保留字,但是不推薦使用這些特別的名字。
Python 是動(dòng)態(tài)類型語言, 也就是說不需要預(yù)先聲明變量的類型。 變量的類型和值在賦值那一刻被初始化。變量賦值通過等號(hào)來執(zhí)行。
Python的有效標(biāo)識(shí)符由大小寫字母、下劃線和數(shù)字組成。數(shù)字不能作為第一個(gè)字符,標(biāo)識(shí)符的長(zhǎng)度不限,Python標(biāo)識(shí)符是大小寫敏感的。

一、關(guān)鍵字
以下標(biāo)識(shí)符用作該語言的保留字或關(guān)鍵字,不能用作普通標(biāo)識(shí)符:

二、內(nèi)建(built-in )
除了關(guān)鍵字之外,Python 還有可以在任何一級(jí)代碼使用的“內(nèi)建”的名字集合,這些名字可以由解釋器設(shè)置或使用。雖然 built-in 不是關(guān)鍵字,但是應(yīng)該把它當(dāng)作“系統(tǒng)保留字”,不做他用。然而,有些情況要求覆蓋(也就是:重定義,替換)它們。Python 不支持重載標(biāo)識(shí)符,所以任何時(shí)刻都只有一個(gè)名字綁定。
built-in 是 builtins 模塊的成員, 在你的程序開始或在交互解釋器中給出 >>> 提示之前,由解釋器自動(dòng)導(dǎo)入的。把它們看成適用在任何一級(jí) Python 代碼的全局變量。
三、保留類別的標(biāo)識(shí)符
Python 用下劃線作為變量前綴和后綴來指定特殊變量(除了關(guān)鍵字)。
_*:
不會(huì)被 from module import * 導(dǎo)入。_ 這個(gè)特殊的標(biāo)識(shí)符用于在交互式解釋器中存儲(chǔ)上一次計(jì)算的結(jié)果;它存儲(chǔ)在 builtins 模塊。不在交互式模式時(shí),_ 沒有特別的含義且是未定義的。
__*__:
系統(tǒng)定義的變量名。這些名稱由解釋器及其實(shí)現(xiàn)(包括標(biāo)準(zhǔn)庫)定義。特別方法名稱 部分中和其他地方討論了當(dāng)前的系統(tǒng)名稱。
__*:
類的私有變量名。此類別中的名稱在類定義的上下文中使用時(shí),將重寫為使用損壞的形式,以幫助避免基本類和派生類的“私有”屬性之間的名稱沖突。
_ :
只有單個(gè)下劃線的變量名(_),在交互解釋器中運(yùn)行時(shí),會(huì)保存最后表達(dá)式的結(jié)果。
注意:避免用下劃線作為變量名的開始
因?yàn)橄聞澗€對(duì)解釋器有特殊的意義,而且是內(nèi)建標(biāo)識(shí)符所使用的符號(hào),我們建議程序員避免用下劃線作為變量名的開始。一般來講,變量名_xxx 被看作是“私有的”,在模塊或類外不可以使用。當(dāng)變量是私有的時(shí)候,用_xxx 來表示變量是很好的習(xí)慣。因?yàn)樽兞棵?strong>xxx對(duì)Python 來說有特殊含義,對(duì)于普通的變量應(yīng)當(dāng)避免這種命名風(fēng)格。
四、命名習(xí)慣
在編程語言中,常見的變量命名方式有兩種:
駝峰體:
DateOfBirth
AgeOfBoy
下劃線:
date_of_birth
age_of_boy
Python官方推薦使用下劃線式的命名方式,視覺感受更明確。個(gè)人習(xí)慣在命名普通變量和函數(shù)名時(shí),使用下劃線式,在命名類名時(shí)使用駝峰體。
在命名變量時(shí)盡量還要做到:
1、不要使用中文或拼音
2、不要使用過長(zhǎng)變量名
3、不要詞不達(dá)意
《Python基礎(chǔ)手冊(cè)》系列:
Python基礎(chǔ)手冊(cè) 1 —— Python語言介紹
Python基礎(chǔ)手冊(cè) 2 —— Python 環(huán)境搭建(Linux)
Python基礎(chǔ)手冊(cè) 3 —— Python解釋器
Python基礎(chǔ)手冊(cè) 4 —— 文本結(jié)構(gòu)
Python基礎(chǔ)手冊(cè) 5 —— 標(biāo)識(shí)符和關(guān)鍵字
Python基礎(chǔ)手冊(cè) 6 —— 操作符
Python基礎(chǔ)手冊(cè) 7 —— 內(nèi)建函數(shù)
Python基礎(chǔ)手冊(cè) 8 —— Python對(duì)象
Python基礎(chǔ)手冊(cè) 9 —— 數(shù)字類型
Python基礎(chǔ)手冊(cè)10 —— 序列(字符串)
Python基礎(chǔ)手冊(cè)11 —— 序列(元組&列表)
Python基礎(chǔ)手冊(cè)12 —— 序列(類型操作)
Python基礎(chǔ)手冊(cè)13 —— 映射(字典)
Python基礎(chǔ)手冊(cè)14 —— 集合
Python基礎(chǔ)手冊(cè)15 —— 解析
Python基礎(chǔ)手冊(cè)16 —— 文件
Python基礎(chǔ)手冊(cè)17 —— 簡(jiǎn)單語句
Python基礎(chǔ)手冊(cè)18 —— 復(fù)合語句(流程控制語句)
Python基礎(chǔ)手冊(cè)19 —— 迭代器
Python基礎(chǔ)手冊(cè)20 —— 生成器
Python基礎(chǔ)手冊(cè)21 —— 函數(shù)的定義
Python基礎(chǔ)手冊(cè)22 —— 函數(shù)的參數(shù)
Python基礎(chǔ)手冊(cè)23 —— 函數(shù)的調(diào)用
Python基礎(chǔ)手冊(cè)24 —— 函數(shù)中變量的作用域
Python基礎(chǔ)手冊(cè)25 —— 裝飾器
Python基礎(chǔ)手冊(cè)26 —— 錯(cuò)誤 & 異常
Python基礎(chǔ)手冊(cè)27 —— 模塊
Python基礎(chǔ)手冊(cè)28 —— 模塊的高級(jí)概念
Python基礎(chǔ)手冊(cè)29 —— 包