我尝试以下操作,它打印1,没有例外。 这是python的所有版本(> 2.7)的预期行为吗?
a='1 \r\n'
print int(a)
答案 0 :(得分:4)
documentation for int()
明确说明这是预期的行为:
如果 x 不是数字或者给出了base,那么我必须是一个字符串或Unicode对象,表示基数为整数的文本。可选地,文字可以在前面加+或 - (之间没有空格)和用空格包围。
强调我的。
这是Python的预期行为;您可以将字符串传递给int()
函数的第一个版本是Python 1.5,并且在Python 2和Python 3中行为保持不变。