gpt4 book ai didi

python - 如何用python中的函数改变列表?

转载 作者:太空狗 更新时间:2023-10-29 20:13:48 25 4
gpt4 key购买 nike

这是我写的描述我的问题的伪代码:-

func(s):
#returns a value of s

x = a list of strings
print func(x)
print x #these two should give the SAME output

当我最后打印 x 的值时,我希望它是 func(x) 返回的值。我可以只通过编辑函数来做这样的事情吗(而不设置 x = func(x))

最佳答案

func(s):
s[:] = whatever after mutating
return s

x = a list of strings
print func(x)
print x

你实际上不需要返回任何东西:

def func(s):
s[:] = [1,2,3]

x = [1,2]
print func(x)
print x # -> [1,2,3]

这完全取决于您实际在做什么,添加或列表的任何直接突变都将反射(reflect)在函数外部,因为您实际上正在更改传入的原始对象/列表。如果您正在做一些创建新对象的事情并且您希望在设置 s[:] =.. 中传递的列表中反射(reflect)的更改将更改原始列表。

关于python - 如何用python中的函数改变列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31359652/

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