sum 是Python中的内置函数,这就是我得到这个输出的原因.
>>> type(sum)
<type 'builtin_function_or_method'>
Run Code Online (Sandbox Code Playgroud)
但是当我这样做的时候
>>> type(print)
Run Code Online (Sandbox Code Playgroud)
它回来了
File "<stdin>", line 1
type(print)
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
那么,有没有打印类型?功能是print个例外type()吗?
我使用的是Python 2.7
在Python 2中,print是一个语句,它是一个与变量或函数完全不同的东西.语句不是可以传递给的Python对象type(); 它们只是语言本身的一部分,甚至比内置函数更多.例如,你可以这样做sum = 5(即使你不应该这样做),但你做不到print = 5或if = 7因为print而且if是陈述.
在Python 3中,print语句被print()函数替换.所以,如果你这样做type(print),它会回来<class 'builtin_function_or_method'>.
奖金:
在Python 2.6+中,您可以放在from __future__ import print_function脚本的顶部(作为第一行代码),print语句将替换为该print()函数.
>>> # Python 2
>>> from __future__ import print_function
>>> type(print)
<type 'builtin_function_or_method'>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
707 次 |
| 最近记录: |