加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Python的合法标识符

(2018-03-27 15:35:32)
分类: Python学习笔记
标识符是电脑语言中允许作为名字的有效字符串集合。Pyhon标识符规则:
1. 第一个字符必须是字母或是下划线(_),即不能以数字开。
2. 剩下的字符可以是字母,数字和下划线,即不能包含除了下划线以外的符号(空格,运算符...)。
3. 大小写敏感。
4. Python的保留关键字不能作为标识符。
5. 不建议使用python的内建名字集合当作标识符。

Python提供了keyword模块来查询关键字集合和判断一个字符串是否是python的关键字:
下面这段代码可以让用户输入一个字符串,然后判断是否是合法的python标识符,如果不是继续输入,直到输入正确,程序退出。
import keyword
import string

def is_valid_py_name(py_name):
    py_name = py_name.strip()
    if keyword.iskeyword(py_name):
        print "'{0}' is a python keyword!".format(py_name)
        return False
    elif py_name == "":
        print "empty input!"
        return False
    elif py_name[0] not in (string.letters+'_'):
        print "'{0}' not start with _ or letter!".format(py_name)
        return False
    else:
        for i in range(1,len(py_name)):
            if py_name[i] not in (string.letters+'_'+string.digits):
                print "'{0}' is invalid letter!".format(py_name[i])
                return False
        print "'{0}' is valid py name!".format(py_name)
        return True
    
if __name__ == "__main__":
    is_valid = False
    while not is_valid:
        print "Please enter a string:"
        py_name = raw_input()
        is_valid = is_valid_py_name(py_name)

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有