我有一个函数可以创建一个名为list_set
的空列表,并添加一个预先存在的列表的副本,
original_list,因此list_set[0]
为original_list
。
该函数必须复制list_set[0]
,随机选择一个值并根据a操纵它
预先存在的函数new_sum,然后将此新列表添加为list_set[1]
。
同样,该函数必须复制list_set[1]
(与...不同)
list_set[0]
),在list_set[1]
中随机选择一个值并进行操作
基于函数new_sum,并将其添加为list_set[2]
。
该功能必须 这样做300次。
在我的代码中,我注意到该函数正在创建300个original_list
的相同副本,并在每个列表中随机操作一个值。
def condition_manipulate(value):
list_set=[]
for i in range(0,value):
new_list=original_list[:]
i=random.choice(range(len(original_list)))
new_list[i]=new_sum(new_list[i])
list_set.append(new_list)
return list_set
如何修复此代码?非常感谢帮助
答案 0 :(得分:0)
除了覆盖我的问题,如前所述,似乎你实际上总是再次采用原始列表。这样的事情怎么样:
def condition_manipulate(value):
list_set=[original_list]
for i in range(0,value):
new_list=list_set[-1][:]
i=random.choice(range(len(original_list)))
new_list[i]=new_sum(new_list[i])
list_set.append(new_list)
return list_set