私は、利用可能なリストから5つの乱数が選択され、それぞれが表示される短いスクリプトを作成しようとしています。私が抱えている問題は、結果を追加しているリストが整数や文字列ではなくリストを返すということです。ここでは、コードです:リストのPython項目はまだリストですか?
def randomStar(self):
choice = [5,4,3]
probability = [0.1, 0.2, 0.7]
star = random.choices(choice, probability)
return star
multi = []
characters = []
for x in range(5):
star = randomStar(x)
multi.append(star)
x += 1
for star in multi:
characters.append(star)
print (characters)
print (multi)
どちらもマルチと文字のリストが返さ:
['[3]', '[3]', '[3]', '[5]', '[3]']
だから私は、私はまだリストを取得する「マルチ」のリストを反復処理しようとします。値を取得するにはどうすればよいですか?それとも、リストに数字が間違って追加されているのですか?
ありがとうございました。
これはリストではありません。それらは文字列であり、リストを表します(あなたが表示する文字列は有効なリストリテラルです)。実際にどこにでも文字列に変換されていないとすれば、* how *ははっきりしません。実際の[mcve]を与えてください。 – jonrsharpe
ok、各項目を表示すると、[3]、[4]などのようになります。 – davidb
それは私が持っているすべてのコードですが、唯一のことは、ランダムモジュールをインポートしていることです。追加するものはほかにありません – davidb