IMO python 如果参数是基本类型(如数字、布尔值),则按值传递
func_a(bool_value):
bool_value = True
Run Code Online (Sandbox Code Playgroud)
不会改变外面bool_value吧?
所以我的问题是如何使更改bool_value在外部生效(通过引用传递?
您可以使用列表来括起 inout 变量:
def func(container):
container[0] = True
container = [False]
func(container)
print container[0]
Run Code Online (Sandbox Code Playgroud)
按值调用/按引用调用的用词不当是一个古老的争论。CLU 的调用共享更准确地描述了 Python 的语义。有关更多详细信息,请参阅 Fredrik Lundh 的文章:
| 归档时间: |
|
| 查看次数: |
10048 次 |
| 最近记录: |