我有一个对象使用str(object)转换为字符串。我想检查,使用字符串,如果我有一个None对象(在我的情况下,它永远不会是'None',除非对象是None)。为什么str(None)不是str(None)?
string = str(object) // object is None
if string is 'None' or string is str(None):
// do something
问题是条件永远不会通过。我该如何检查这种情况?
同样的方法str(无)是str(无)返回False。为什么?
你已经混淆了平等与身份。试试'string =='None'或string == str(None)'。请参阅http://stackoverflow.com/questions/2988017/string-comparison-in-python-is-vs或http://stackoverflow.com/questions/1504717/why-does-comparing-strings-in-python-using - 或者 - 或者 - 有时产生 –
注意不要使用'object'作为变量名称来覆盖内建的'object'构造函数。 – Aerovistae
不要使用'object'作为变量名! '>':-( – dawg