了解Python的传递函数参数的按对象调用样式

了解Python的传递函数参数的按对象调用样式,第1张

了解Python的传递函数参数的按对象调用样式

关键区别在于,在C风格的语言中,变量是您在其中放置内容的内存中的框。 在Python中,变量是名称。

Python既不是按引用调用也不是按值调用。这更明智!(实际上,我在学习更通用的语言之前就已经学习过Python,因此按值调用和按引用调用对我来说似乎很奇怪。)

在Python中,有 东西 ,有 名字 。列表,整数,字符串和自定义对象都是万物。

x
y
z
是名字。写作

x = []

意思是“构造新事物

[]
并为其命名
x
”。写作

x = []foo = lambda x: x.append(None)foo(x)

意思是“

[]
用name构造一个新事物,用name
x
构造一个新函数(这是另一件事)
foo
,然后调用
foo
具有name的事物
x
”。现在,
foo
仅将
None
其追加到收到的任何内容上,因此减少为“追加
None
到空列表”。写作

x = 0def foo(x):    x += 1foo(x)

意思是“建设一个新事物

0
与名称
x
,构造一个新的功能
foo
,并呼吁
foo
x
”。内部
foo
,分配正义说:“重命名
x
为1,再加上它曾经是什么”,但是这并不能改变
事情 0。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5631048.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存