对于一个字符串,说foo
,如果我想获得它的再版通过调用该字符串的__repr__
,所有我做的是:为什么打印一个整数的__repr__需要括号?
>>> 'foo'.__repr__()
"'foo'"
这也适用于:
>>> ('foo').__repr__()
"'foo'"
它是float
S也是一样的情况:
>>> 1.0.__repr__()
'1.0'
>>> (1.0).__repr__()
'1.0'
但是,当涉及到整数,这是不太一样的。试图调用__repr__
而不首先应用括号抛出一个错误
>>> 1.__repr__()
File "<stdin>", line 1
1.__repr__()
^
SyntaxError: invalid syntax
然而,当我申请括号,它的工作原理:
>>> (1).__repr__()
'1'
那么,为什么一个整数需要括号?
因为1.是浮点数1.0吗?所以为了避免混淆? –
因为'1.'是一个浮点常量。 – ForceBru