【发布时间】:2019-06-08 13:19:13
【问题描述】:
def add_10(x):
tenplus=x+10
return tenplus
add_30=add_10(30)
add_90=add_10(90)
如果我交换最后两行,我得到:
def add_10(x):
tenplus=x+10
return tenplus
add_10(30)=add_30
add_10(30)=add_90
有一个错误。 计算机如何读取第二个版本?
【问题讨论】:
-
我认为这不适用于任何语言。如何对函数调用进行赋值?我不清楚你为什么希望它起作用
-
您通过
x=value分配而不是value=x并用于比较使用x==value -
我认为您在数学交换示例方面考虑得太多了。在编程中(至少在 Python 中),
=是一个赋值,并且是单独的。其他语言在语法上有所不同,但我认为它们的赋值顺序并没有什么不同。 -
许多编程语言使用
=进行赋值,尽管这在数学上令人困惑和/或烦人。为了避免这种情况,例如Pascal 使用:=代替;这也是being made available as a synonym in a forthcoming version of Python,尽管规范的=分配不会很快消失。 (我相信:=在黑暗时代被选为 ⇐ 的 ASCII 近似值。) -
(更详细地查看 PEP572,即使在 3.8 中,您也无法使用
:=直接替代=。)
标签: python