关于Python踩坑,a = "//" 之后 a is "//" 语句是否为True?
关于Python踩坑,a = "//" 之后 a is "//" 语句是否为True?
这两天踩了个坑,用写LCS的时候,发现
vc+1xNfz09Ky2df3yv21xLXY1rfKx7fxz+C1yKOuyOe5+8rHzazSu7j2ttTP86Os1PK3tbvYVHJ1ZaOst/HU8re1u9hGYWxzZS48L3A+Cgo8cD48aW1nIHNyYz0="http://www.2cto.com/uploadfile/Collfiles/20150211/20150211085719250.png" alt="这里写图片描述" title="\">
这里要特别注意,以后变量判断是否等于某一常量的时候,如果使用is,可能永远都是False.
但是遇到个坑,
a = "+"? a is "+"
a = "\\"? a is "\\"
两则后面一个语句的bool值是不同的...前者为真,后者为假...
感谢@凯旋冲锋 找到这个blog.link里面的博文讲的很清楚.不过感觉我还是有些不理解...
http://guilload.com/python-string-interning/
这里可能和转义字符有关系.
评论关闭