麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Python > 正文

Python中的標識符命名方法及使用注意事項

2023-04-27 19:03:19
字體:
來源:轉載
供稿:網友

Python中的標識符是由用戶定義的名稱,用來指定變量名稱、函數名稱、類名稱,模塊等名稱。

1、標識符的命名規則

(1)不能使用Python的保留字(關鍵字)來命名標識符;

(2)Python標識符合法的字符包括:26個大小寫字母[a-z,A-Z],10個阿拉伯數字[0-9]及下劃線;

(3)標識符不能以數字開頭;

(4)標識符開始字符可以是大小寫字母或下劃線;

(5)Python中標識符的長度沒有限制;

(6)Python標識符是大小寫敏感的(即字母大小寫代表不同的標識符)。

2、一些符合要求的標識符示例

name1   有字母和數字構成,且開頭字符是字母;

student_age   有字母和下劃線構成;

_income   有下劃線開始

為了增強程序的可讀性,特別是比較長或大型程序中,在命名標識符時,最好能見名知義,否則時間久了,連自己都不知道代表什么意思,當然,寫注釋也是幫助理解程序的一種很好的做法。

3、一些不合法的標識符示例:

100   不允許只有數字構成;

3year   標識符不能以數字開頭

a-b   標識符中包含不合法的字符(-)

for  標識符是Python中的關鍵字

teacher and student   標識符包含非法的字符-空格或空白

3、標識符有效性檢驗

在Python中,可以使用 isidentifier() 函數來檢驗一個標識符是否是合法的。但是,這個函數不會忽略Python中的關鍵字。即,你準備使用Python中的關鍵字來命名自己的標識符的話,這個函數也會認為是有效的,畢竟,Python中的關鍵字也是標識符,只不過是Python中保留下來用于構建自己的語法組成。

但是,我們可以借助另外一個函數 keyword.iskeyword() 來判斷一個標識符是不是關鍵字,使用這兩個函數就可以完全來檢驗自己定義的標識符是不是有效的了。

具體操作代碼:

print("name1".isidentifier())     #True
print("100".isidentifier())          #False
print("_income".isidentifier())  #True
print("3year".isidentifier())       #False
print("a-b".isidentifier())          #False
print("for".isidentifier())           #True

最后一個,for被判定為True,但它是Python的關鍵字,我們不能使用它來命名自己的標識符。

可以使用下面的程序先來判斷一下要使用的標識符是不是關鍵字,如果不是的話,再進一步使用上面的函數來判斷是不是有效的標識符即可。

import keyword
print(keyword.iskeyword("for"))   # True

上面輸出的為True,則for為關鍵字,你就不能使用它作為自己的標識符了。

上面在Python3.8.3Shell中運行的情況如下圖所示:

Python中的標識符命名規則

如果有需要的話,可以定義一個函數來實現相關的功能:

def isValidIdentifier(str):
      return str.isidentifier() and not keyword.iskeyword(str)

print(isValidIdentifier("for"))   # False

5、Python標識符命名最佳實踐

(1)類名最好以大寫字母開始,如Student,Teacher,Employee,等。

(2)如果類名有多個單詞構成,則每個單詞的開頭字母都要大寫,如StudentClass, FileHelper等。

(3)變量的名稱、函數的名稱、模塊的名稱,要使用小寫字母來命名,如 age, say(),等。

(4)如果變量、函數名稱、模塊名稱由多個單詞構成,則單詞與單詞間使用下劃線進行分隔:如:student_name, print_score()等。

(5)如果變量被定義為私有變量,則命名可以使用下劃線作為開始字符;

(6)避免命名標識符時,開頭字符和結尾字符都是下劃線,因為這種標識符是Python的內置類型;

(7)避免標識符的開頭和結尾同時有兩個下劃線,這是因為這種命名方式是Python語言定義的特殊名稱;

(8)盡量使標識符的命名有意義,見名知義是最好的方法,如 student_name要比sn好很多;

(9)如果一個函數返回一個布爾類型的結果,則最好在給函數命名時以"is"開頭,如:isfineshed,isateacher等。

(10)雖然在Python中,標識符的長度沒有限制,但最好是使其盡可能的短,如 stu_first_name要比the_student_entity_fist_name好很多。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 逼特逼视频在线观看 | 久久久久亚洲国产精品 | 在线亚洲免费 | 在线看免费观看日本 | 精品国产一区二区三区久久久 | 最新中文字幕日本 | 精品国产乱码一区二区三区四区 | 欧美一页| 国产乱free国语对白 | 成人午夜精品久久久久久久蜜臀 | 国产免费高清在线视频 | 4399一级成人毛片 | 一级做受大片免费视频 | 性视频久久 | 毛片成人网 | 亚洲成人免费视频在线 | 免费在线观看成年人视频 | 精品一区二区在线播放 | wwwxxx视频| 国产福利不卡一区二区三区 | 国产午夜亚洲精品 | 日日狠狠久久偷偷四色综合免费 | 欧美日韩在线视频一区 | 欧美a黄 | 黄色av.com | 午夜视频久久 | 国产精品视频久久久 | 色呦呦一区二区三区 | 狠狠色噜噜狠狠狠米奇9999 | 精品国产一区二区三区在线观看 | 永久在线观看电影 | 日日摸夜夜骑 | 成人三级视频在线观看 | 九九热国产视频 | 龙的两根好大拔不出去h | 日韩视频1 | 国产精品99久久免费观看 | 55夜色66夜色国产精品视频 | 毛片在线视频免费观看 | 国产喷白浆10p | 爽爽淫人综合网网站 |