Python中isidentifier()函數(shù)的作用是檢查一個(gè)字符串是否是Python有效的標(biāo)識(shí)符。
標(biāo)識(shí)符是用來定義Python中的變量、類、函數(shù)名稱、模塊名稱以及Python中的保留字。標(biāo)識(shí)符命名時(shí)應(yīng)遵循一定的規(guī)則,否則導(dǎo)致語法錯(cuò)誤。Python中合法的標(biāo)識(shí)符應(yīng)滿足以下規(guī)則:
(1)標(biāo)識(shí)符只能由下劃線或字母開始,不能是數(shù)字;
(2)標(biāo)識(shí)符中不能含除下劃線之外的其它特殊字符,如$,#,%,~等;
(3)在定義自己的標(biāo)識(shí)符時(shí),不能使用Python的保留字。
(4)Python中理論上可以使用Unicode中除特殊字符、格式控制符、不可打印字符、符號(hào)字符、空白符之外的所有字符,如漢字,英文字母、日語平假名、希臘字母等;
(5)Python中標(biāo)識(shí)符的長度沒有限制,且是大小寫敏感的。
其它關(guān)于標(biāo)識(shí)符的知識(shí),可以閱讀上面提到的那篇文章。
關(guān)于標(biāo)識(shí)符的有關(guān)概念,讀者可以去閱讀本站的另一篇文章:Python中的標(biāo)識(shí)符命名方法及使用注意事項(xiàng)。
實(shí)際上,按照規(guī)則,一般我們不會(huì)出現(xiàn)什么問題,但有時(shí)可能需要判斷一個(gè)標(biāo)識(shí)符是否為合法的Python標(biāo)識(shí)符。這時(shí)isidentifier()函數(shù)就派上用場(chǎng)了。其語法格式如下:
str.isidentifier()
該函數(shù)沒有參數(shù),如果 str 是合法的標(biāo)識(shí)符,則返回 True ,否則返回 False .
>>> 'X'.isidentifer()
True
>>> 'a123'.isidentifer()
True
>>> '_a_student'.isidentifier()
True
>>> '2people'.isidentifier() # 以數(shù)字開頭
False
>>> '_2people'.isidentifier() # 以下劃線開頭
True
>>> 'stu$fee'.isidentifier() # 包含不合法字符$
False
>>> 'str-1'.isidentifier() # 包含不合法字符-
False
>>> 'while'.isidentifier() # Python中的關(guān)鍵字
True
>>> '人數(shù)'.isidentifer() #使用漢字作為標(biāo)識(shí)符
True
>>> 'αβ'.isidentifier()
True
從上面的輸出可以看到,Python中isidentifier()函數(shù)不僅能判斷用戶定義的標(biāo)識(shí)符是否合法,同時(shí)也能把Python的保留關(guān)鍵字判斷為有效的標(biāo)識(shí)符。如果想判斷一個(gè)標(biāo)識(shí)符是否是Python的保留關(guān)鍵字,可以使用keword模塊中的iskeyword函數(shù)來判斷,詳見《Python中的標(biāo)識(shí)符命名方法及使用注意事項(xiàng)》一文。
本文(完)。
新聞熱點(diǎn)
疑難解答
圖片精選