Python中isidentifier()函数的作用是检查一个字符串是否是Python有效的标识符。
标识符是用来定义Python中的变量、类、函数名称、模块名称以及Python中的保留字。标识符命名时应遵循一定的规则,否则导致语法错误。Python中合法的标识符应满足以下规则:
(1)标识符只能由下划线或字母开始,不能是数字;
(2)标识符中不能含除下划线之外的其它特殊字符,如$,#,%,~等;
(3)在定义自己的标识符时,不能使用Python的保留字。
(4)Python中理论上可以使用Unicode中除特殊字符、格式控制符、不可打印字符、符号字符、空白符之外的所有字符,如汉字,英文字母、日语平假名、希腊字母等;
(5)Python中标识符的长度没有限制,且是大小写敏感的。
其它关于标识符的知识,可以阅读上面提到的那篇文章。
关于标识符的有关概念,读者可以去阅读本站的另一篇文章:Python中的标识符命名方法及使用注意事项。
实际上,按照规则,一般我们不会出现什么问题,但有时可能需要判断一个标识符是否为合法的Python标识符。这时isidentifier()函数就派上用场了。其语法格式如下:
str.isidentifier()
该函数没有参数,如果 str 是合法的标识符,则返回 True ,否则返回 False .
>>> 'X'.isidentifer()
True
>>> 'a123'.isidentifer()
True
>>> '_a_student'.isidentifier()
True
>>> '2people'.isidentifier() # 以数字开头
False
>>> '_2people'.isidentifier() # 以下划线开头
True
>>> 'stu$fee'.isidentifier() # 包含不合法字符$
False
>>> 'str-1'.isidentifier() # 包含不合法字符-
False
>>> 'while'.isidentifier() # Python中的关键字
True
>>> '人数'.isidentifer() #使用汉字作为标识符
True
>>> 'αβ'.isidentifier()
True
从上面的输出可以看到,Python中isidentifier()函数不仅能判断用户定义的标识符是否合法,同时也能把Python的保留关键字判断为有效的标识符。如果想判断一个标识符是否是Python的保留关键字,可以使用keword模块中的iskeyword函数来判断,详见《Python中的标识符命名方法及使用注意事项》一文。
本文(完)。
新闻热点
疑难解答