引数として数値を取る関数があります。この関数は、既存のリスト (100 個の要素) のコピーを作成し、ランダムに選択されたリスト内の値を操作することになっています。たとえば、関数に200の引数を与えると、新しいリストを作成し、毎回ランダムに値を選択する必要があり、200回で新しいリストを作成し、元の既存のリストの各要素が100 個の要素が少なくとも 1 回操作されます。このデータは後でグラフ化されます。私が書いた関数がすべての要素を操作していないことに気づき続けています。私のコードは次のとおりです。
def condition_manipulate(value):
list_set=[]
for i in range(0,value):
new_list=initial_conditions[:]
x=random.choice(new_list)
variable=new_sum(new_list.index(x)) #new_sum is a pre-defined function
new_list[new_list.index(x)]=variable
list_set.append(new_list)
return list_set
問題は、私が random.choice を選択したことである可能性があります。これにより、initial_conditions のすべての要素に対して condition_manipulate が少なくとも 1 回は実行されませんが、これを修正するにはどうすればよいでしょうか?
編集: データをグラフ化したところ、new_list の同じ値で実行され続けていることに気付きました...他の値を選択していません!