ランダム リストを生成するとき、random.shuffle() 関数が使用されます。この関数の呼び出しに関して次の疑問が生じます: リストが明示的に定義されている場合 (li = [] など)、シャッフル関数望ましい結果が得られますが、ただし、list(range(n)) が shuffle のパラメーターとして使用される場合は、None が返されます。図に示すように:
何が起こっているのでしょうか?それらはすべてリスト カテゴリに属します
リーリー
ドキュメントには、list对象, 则直接作用鱼listオブジェクト
list
なぜならrandom.shuffle()会直接作用于list本身,而不会返回任何值,所以你第一个语句的结果会是None.但是在random.shuffle(li)的时候,你打印的是liこのリスト自体が変更されているからです。こう書くと
random.shuffle()
random.shuffle(li)
li
li = ランダム.シャッフル(リ)
その後、同じように戻りますNone.所以想要得到list(range(20))被shuffle操作过后的值,需要先给它一个变量名,在被shuffle操作後にのみアクセスできます。
None
list(range(20))
shuffle
リーリー
ドキュメントには、
が与えられた場合と記載されています リーリーlist
对象, 则直接作用鱼list
オブジェクトなぜなら
random.shuffle()
会直接作用于list
本身,而不会返回任何值,所以你第一个语句的结果会是None.但是在random.shuffle(li)
的时候,你打印的是li
このリスト自体が変更されているからです。こう書くとその後、同じように戻ります
None
.所以想要得到list(range(20))
被shuffle
操作过后的值,需要先给它一个变量名,在被shuffle
操作後にのみアクセスできます。