gpt4 book ai didi

Python局部变量被另一种方法改变

转载 作者:太空宇宙 更新时间:2023-11-03 16:00:37 25 4
gpt4 key购买 nike

<分区>

我想知道是否有任何 python 人员可以告诉我以下情况如何/为什么会发生:

# define a list and send it as an arg to another function
def foo():
nums=[1,2,3]
bar(nums)
print(nums)

# Take the list as an arg and pop the last element off
def bar(numbrs):
numbrs.pop()

# Call the first function
foo()

# The nums local variable has been modified
[1, 2]

作为一名 ruby​​ 爱好者,我发现 foo 函数中局部定义的变量 (nums) 可以通过 bar 函数中执行的操作来更改,这真的很奇怪!这样的纠缠正常吗?有名字吗?

这两个函数甚至不使用相同的名称来引用列表。这很奇特。不过我有点喜欢它。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com