只是想知道我是否可以在Python 3.5中将所有内容转换为字符串。
例如,这会抛出错误吗?
def test(arg):
try:
arg=str(arg)
except ValueError:
答案 0 :(得分:3)
标准库中的每个类型都可以使用str()函数在Python中转换为字符串,但Python中的每个对象都不需要在标准库中。
理论上这会抛出一个错误(因为我们将默认的__str__
方法重写为不返回字符串的东西):
class O:
def __str__(self):
pass
o = O()
print(str(o))
// TypeError: __str__ returned non-string (type NoneType)