2 回答

TA貢獻1772條經(jīng)驗 獲得超8個贊
通過這樣做進行實驗:
my_value = 575.0
print = (my_value)
print(print)
請注意,您收到以下錯誤:
Traceback (most recent call last):
File "C:/Users/jchca/PycharmProjects/Josepe_project/Josepe/Practice10.py", line 4, in <module>
print(print)
TypeError: 'float' object is not callable
本質(zhì)上,她重寫了 print 函數(shù),因此print現(xiàn)在充當浮點值(這是在 Python 3.x 中)

TA貢獻1797條經(jīng)驗 獲得超6個贊
它不會引發(fā)錯誤,因為在 Python 3 中,print它是一個常規(guī)函數(shù)。并且函數(shù)對象綁定到名稱,print引用特定函數(shù)對象的名稱(“變量”)也是如此。
由于函數(shù)與變量沒有什么不同,您可以隨意重新分配它們:
def add(a, b):
return a + b
add = "ha-ha, I'm a string"
=符號后面的括號是您在數(shù)學(xué)中使用的括號類型:
print = (1 + 2) # print == 3
名稱后面的括號表示函數(shù)調(diào)用。
但現(xiàn)在print壞了,你永遠無法打印任何東西!不是真的 - 有一個副本__builtins__.print:
print = __builtins__.print
但是,您可以很容易地搞砸:
__builtins__.print = 5
然而,在 Python 2 中,print是一個語句,而不是一個常規(guī)函數(shù),所以這會失?。?/p>
Python 2.7.16 (default, Dec 3 2019, 07:02:07)
>>> print = 5
File "<stdin>", line 1
print = 5
^
SyntaxError: invalid syntax
添加回答
舉報