Python之判断标识符是否合法
判断标识符(变量)是否合法
#判断标识符是否合法,先判断首字母是否合法,在判断其他字符
#合法标识符是首字母必须是字母或下划线,其他字母可以是字母+数字+下划线
import sys
import keyword
from string import ascii_letters, digits
#定义首字符和其他字符
first_chs = ascii_letters + '_'
others_chs = first_chs + digits
def check_idt(idt):
"检查标识符是否合法"
#先判断是否是关键字
if keyword.iskeyword(idt):
return '%s是关键字!' % idt
#判断首字母
if idt[0] not in first_chs:
return '第一个字符%s不合法!' % idt
#判断其他字符
for i in range(len(idt)):
if i == 0:
continue
if idt[i] not in others_chs:
return '第%s个字符(%s)不合法!' % (i + 1, idt[i])
return '%s是合法字符' % idt
if __name__ == '__main__':
print(check_idt(sys.argv[1]))