我想知道python函数中的列表参数,比如[:] pset=[] def powea: 波韦尔帕,0 def powehelpa,ind: 如果lena==ind: 附属物 回来 powehelpa[:],ind+1 a、 波宾德 powehelpa[:],印第安纳州 powe[1,2,3] 打印集

我想知道python函数中的列表参数,比如[:] pset=[] def powea: 波韦尔帕,0 def powehelpa,ind: 如果lena==ind: 附属物 回来 powehelpa[:],ind+1 a、 波宾德 powehelpa[:],印第安纳州 powe[1,2,3] 打印集,python,python-3.x,Python,Python 3.x,这段代码创建了它的子集,在这段代码中,我想知道为什么我不能使用powehelpa,ind+1而不是powehelpa[:],ind+1 我知道a[:]表示获取所有值​​名单a的 使用时,结果为[]、[]、[]、[]、[]、[]。您的powehelp函数使用pop,这意味着它会更改给定的列表 如果你把a传递给它,它就是一个被改变了的a,显然最后是空的 a[:]创建a的副本。如果将a[:]传递给powehelp,则原始列表a不受影响。给定的a本身就是一个列表,因此将列表附加到列表将生成嵌套列表 a

这段代码创建了它的子集,在这段代码中,我想知道为什么我不能使用powehelpa,ind+1而不是powehelpa[:],ind+1

我知道a[:]表示获取所有值​​名单a的

使用时,结果为[]、[]、[]、[]、[]、[]。

您的powehelp函数使用pop,这意味着它会更改给定的列表

如果你把a传递给它,它就是一个被改变了的a,显然最后是空的

a[:]创建a的副本。如果将a[:]传递给powehelp,则原始列表a不受影响。

给定的a本身就是一个列表,因此将列表附加到列表将生成嵌套列表

a = [1, 2, 3]
b = []
b.append(a)
b
[[1, 2, 3]]
在pset.appenda中,将列表a插入列表pset的尾端,从而生成一个嵌套列表。如果我正确理解了您的需求,您希望将列表连接起来,如:

c = [4, 5, 6]
a + c
[1, 2, 3, 4, 5, 6]

哦,我能理解,谢谢你快速准确的回答