您的位置:首页 > 编程语言 > Python开发

Python类型迷惑:None与数字比较;格式化字符串与unicode

2013-12-16 10:47 435 查看
        近期发现两个Python类型十分令人迷惑的问题,也是很容易出现BUG的地方。

1、

None>0

None<0

None==0

这三个bool变量值分别为False, True, False,而不引起异常。

2、

s = '%s %s %s' % (1, 2, '我是谁')

s的类型是<type 'str'>

稍微改一下——

us = u'我是谁'

s = '%s %s %s' % (1, 2, us )

s的类型变成了<type 'unicode'>

十分让人费解,为什么两种同样的写法结果连类型都不一样!

这两个问题目前是我对Python语法最不满意的地方,不满意的程度超过了定义函数时,使用可变类型作为默认参数引发的问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  character