我想在Python-3脚本中为变量名使用更多种类的Unicode符号。在Python的3个变量名称中,哪些字符是可接受的?
我最近开始使用Unicode符号(如希腊和亚洲符号)进行代码混淆。
发布于 2013-06-11 20:22:24
根据PEP 3131,标识符的第一个字符需要属于ID_Start,其余的属于ID_Continue,定义如下:
ID_Start被定义为具有大写字母(Lu)、小写字母(Ll)、大小写字母(Lt)、修饰字母(Lm)、其他字母(Lo)、字母数字(Nl)、下划线和带有Other_ID_Start属性的字符中的一个的所有字符。然后,通过删除XID_Start规范化不再属于ID_Start ID_Continue*格式的所有字符,NFKC在规范化下关闭此集合。
ID_Continue定义为ID_Start中的所有字符,加上带有Other_ID_Continue属性的非空格标记(Mn)、空格组合标记(Mc)、十进制数(Nd)、连接符标点(Pc)和字符。同样,XID_Continue在NFKC-normalization下关闭了这个集合;它还添加了U+00B7来支持加泰罗尼亚语。
这是一个很长的列表(目前大约是120.000个字符)-幸运的是there is a helpful project on GitHub that contains the list and a script to generate it。
https://stackoverflow.com/questions/17043894
复制相似问题