當你開始接觸Python編程,你會發現代碼中有很多“詞匯”。有些詞是Python語言本身已經預設好,并賦予了特殊意義的,它們是構建Python語法的基石,我們稱之為關鍵字。另一些詞則是我們程序員在編寫代碼時,為了區分不同的數據、功能等而自定義的名稱,我們稱之為標識符。
理解關鍵字和標識符的定義、規則以及使用規范,是編寫任何Python程序的關鍵第一步。這不僅能幫助你的代碼順利運行,更能讓你的代碼清晰易讀,便于自己和他人理解。
一、Python 關鍵字 (Keywords)
在Python中,關鍵字(Keywords),又稱保留字(Reserved Words),是Python語言預先定義好的、具有特殊含義和用途的單詞。它們是Python語法結構的一部分,用來執行特定的任務,例如控制程序的執行流程、定義數據結構等。
1. 關鍵字的特性
- ? 特殊含義,不可更改:每個關鍵字都已被Python解釋器賦予了固定的、特定的含義和功能。你不能改變它們的用途。
- ? 不可用作標識符:由于關鍵字已被Python語言“占用”,你絕對不能將它們用作你自己定義的變量名、函數名、類名、模塊名等標識符。嘗試這樣做會導致程序報錯(SyntaxError)。
- ? 大小寫敏感:Python關鍵字是大小寫敏感的。例如,if 是關鍵字,但 IF 或 If 就不是。特別需要注意的是,True、False 和 None 這三個關鍵字是以大寫字母開頭的。
- ? 數量有限且固定:Python的關鍵字數量是固定且相對較少的,這有助于保持語言的簡潔性。隨著Python版本的更新,偶爾會有新的關鍵字加入。
2. 如何查看所有關鍵字?
Python提供了一個內置的 keyword 模塊,可以方便地查看當前Python版本的所有關鍵字。
代碼示例:
3. 常見關鍵字示例
以下是一些你將來會頻繁遇到的關鍵字及其簡要作用:
- ? if, elif, else: 用于構建條件判斷語句,根據不同的條件執行不同的代碼分支。
- ? for, while: 用于構建循環語句,重復執行一段代碼塊。
- ? def: 用于定義函數,將一段可重復使用的代碼封裝起來。
- ? class: 用于定義類,是面向對象編程的基礎。
- ? import, from: 用于導入其他模塊(文件)中的代碼,以便在當前程序中使用。
- ? True, False: 布爾類型的值,分別表示邏輯上的“真”和“假”。
- ? None: 表示一個空值或者沒有值。
- ? and, or, not: 邏輯運算符,用于組合或反轉布爾表達式。
- ? return: 在函數中用于返回一個值,并結束函數的執行。
代碼示例:嘗試用關鍵字作為變量名(會導致錯誤)
請注意,以下代碼會引發語法錯誤,僅為演示關鍵字的不可用性。

當你運行嘗試使用關鍵字作為標識符的代碼時,Python解釋器會立刻報告 SyntaxError,因為它無法理解這種用法。
二、Python 標識符 (Identifiers)
標識符(Identifiers)是你作為程序員在Python程序中自定義的名稱。它們用于命名程序中的各種“實體”,包括變量、函數、類、模塊,甚至是文件。你可以將標識符理解為為這些代碼元素貼上的“標簽”,以便于在程序中識別和引用它們。
例如,當你創建一個變量來存儲用戶的姓名,你可能會將其命名為 user_name。這里的 user_name 就是一個標識符。
1. 標識符的命名規則(強制性規定,必須遵守)
Python對標識符的命名有嚴格的規則。如果違反這些規則,Python解釋器將無法識別你的標識符,從而導致程序報錯。
- ? 由字母、數字和下劃線組成:標識符可以包含大寫字母(A-Z)、小寫字母(a-z)、數字(0-9)和下劃線(_)。
- ? 不能以數字開頭:標識符的第一個字符不能是數字。
- ? 不能是Python關鍵字:正如前面所述,你不能使用任何Python關鍵字作為標識符。
- ? 區分大小寫:Python是大小寫敏感的。這意味著 myVar 和 myvar 是兩個完全不同的標識符。
- ? 不能包含空格或特殊符號:除了下劃線 _ 之外,標識符中不能包含空格、@、#、$、% 等任何其他特殊符號。
代碼示例:合法與不合法的標識符

2. 標識符的命名規范 (PEP 8 推薦規范,提升代碼質量)
除了強制性的命名規則,Python社區還制定了 PEP 8(Python Enhancement Proposal 8)作為官方的編碼風格指南。遵循這些規范,雖然不會影響代碼的運行,但能顯著提高代碼的可讀性、一致性和可維護性。這就像大家約定俗成的書寫習慣,讓文章更易懂。
- ? 變量名和函數名:
- ? 推薦使用小寫字母,單詞之間用下劃線連接 (snake_case)。例如:first_name, total_score, calculate_area。
- ? 不推薦使用駝峰命名法(camelCase,如 firstName),盡管它是合法的。
- ? 類名:
- ? 推薦使用首字母大寫的駝峰命名法 (PascalCase)。例如:MyClass, UserManager, HttpRequest。
- ? 常量名:
- ? 推薦使用全大寫字母,單詞之間用下劃線連接 (ALL_CAPS)。常量是指在程序運行期間其值不會改變的變量。例如:MAX_CONNECTIONS, PI_VALUE, GRAVITY_CONSTANT。
- ? 模塊名:
- ? 推薦使用小寫字母,可以使用下劃線。例如:my_module.py, data_processor.py。
- ? 描述性強:標識符的名稱應該具有足夠的描述性,能夠清晰地表達它所代表的數據或功能。避免使用模糊或過于簡短的名字(如 a, b, temp),除非它們是生命周期很短的臨時變量。
- ? 例如:user_age 比 u_a 或 x 能夠更好地傳達其含義。
- ? 避免使用拼音或漢字:雖然Python支持,但為了代碼的國際化、通用性和專業性,強烈建議使用英文或廣為人知的縮寫。
- ? 下劃線的特殊含義約定:
- ? 一個前導下劃線(_variable):表示這是一個“內部使用”的名稱,或者說不建議從外部直接訪問。這是一種編程約定,而不是強制性的語法限制。
- ? 兩個前導下劃線(__variable):當用于類的屬性時,會觸發名稱修飾(name mangling),使得該屬性在外部訪問時變得更“私有”(但仍可通過特殊方式訪問)。
- ? 兩個前導和兩個后導下劃線(__method__ 或 __attr__):這些是Python的特殊方法或屬性,被稱為“魔術方法”(magic methods)或“dunder methods”,它們有特殊的系統行為。例如,__init__ 是類的構造函數。
代碼示例:符合PEP 8規范的標識符

三、關鍵字與標識符的區別與聯系
理解了關鍵字和標識符各自的定義和規則后,它們之間的區別和聯系也變得清晰:
- ? 區別:
- ? 來源與性質:關鍵字是Python語言內置的,是語言語法的一部分,具有固定的特殊功能。標識符是你根據需求自定義的,用于命名程序中的各種元素。
- ? 作用:關鍵字控制程序的結構和行為。標識符用于唯一地指代數據或功能,方便程序進行操作。
- ? 可變性:關鍵字是固定不變的。標識符在遵循規則的前提下,可以根據開發者的意圖靈活命名。
- ? 聯系:
- ? 互斥性:最重要的聯系在于它們的互斥性。在定義標識符時,你絕對不能選擇任何一個關鍵字作為名稱。這是Python語言的強制要求,也是避免語法錯誤的關鍵。
簡單來說,關鍵字就像是國家法律中不可更改的“專有名詞”,具有特定法律效力。而標識符則像是你給自己家孩子、寵物或公司起的名字,只要不觸犯法律(命名規則),不使用法律中的專有名詞(關鍵字),并盡量起一個好聽易懂的名字(命名規范),就可以自由發揮。
總結
通過本篇博客,你已經全面了解了Python編程中的【關鍵字】和【標識符】:
- ? 關鍵字:Python語言的保留詞,具有特殊含義,不可用作自定義名稱。你可以使用 keyword.kwlist 查看所有關鍵字。
- ? 標識符:程序員自定義的名稱,用于命名變量、函數、類等。
- ? 必須遵循嚴格的命名規則(字母、數字、下劃線;不能以數字開頭;不能是關鍵字;區分大小寫;無空格/特殊符號)。
- ? 強烈建議遵循 PEP 8 命名規范(snake_case、PascalCase、ALL_CAPS 等),以提高代碼的可讀性和專業性。
掌握這些基礎知識,是你邁向Python編程之路的堅實一步。在未來的編程實踐中,請務必注意正確使用關鍵字,并養成良好、規范的標識符命名習慣,這將幫助你編寫出更優質、更易懂的Python代碼。繼續加油!
以上就是“Python編程入門:關鍵字與標識符!”的詳細內容,想要了解更多Python教程歡迎持續關注編程學習網。
掃碼二維碼 獲取免費視頻學習資料
- 本文固定鏈接: http://phpxs.com/post/13488/
- 轉載請注明:轉載必須在正文中標注并保留原文鏈接
- 掃碼: 掃上方二維碼獲取免費視頻資料