这不起作用.
>>> 10.__str__()
File "<stdin>", line 1
10.__str__()
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
但这很有效.
>>> (10).__str__()
'10'
Run Code Online (Sandbox Code Playgroud)
为什么围绕整数需要括号才能调用其方法?列表或其他数据类型似乎不需要它.
>>> [1, 2].__str__()
'[1, 2]'
>>> {'a': 'foo'}.__str__()
"{'a': 'foo'}"
Run Code Online (Sandbox Code Playgroud)
根据python文档,数字文字需要括号,否则不清楚是否.表示浮点数或方法调用.
例如,要在整数上调用方法:
(10).__str__()
Run Code Online (Sandbox Code Playgroud)
但不是
10.__str__()
Run Code Online (Sandbox Code Playgroud)
而在浮点数上调用方法:
(10.).__str__()
Run Code Online (Sandbox Code Playgroud)
要么
10..__str__()
Run Code Online (Sandbox Code Playgroud)
两者都有效,因为第一个.只能是浮点指示符,因为它后跟一个.调用方法.
| 归档时间: |
|
| 查看次数: |
332 次 |
| 最近记录: |