1

重複の可能性:
Pythonでリストを特定の値に初期化する方法

Javaでは、これを行うことができます。

int[] i = new int[5];

iのすべての要素は0になります。

どうすればPythonでも同じことができますか?私は次のようにしています:

i = [0, 0, 0 , 0, 0]

よりクリーンでシンプルな方法はありますか?

4

3 に答える 3

4

*次の演算子を使用できます。

i = [0] * 5

デモ:

>>> i = [0] * 5
>>> i
[0, 0, 0, 0, 0]

ああ、それiは悪い命名の選択です。人々iは数値ループ変数であることを期待しています。

于 2012-11-16T01:31:11.640 に答える
2
i = [0] * 5

警告:リスト内のものがネストされたリストなどの可変オブジェクトである場合は注意してください。同じオブジェクトへの5つの参照を作成しています。これは、リストアイテムの操作を開始するときに噛み付きます。ただし、整数と文字列の場合は問題ありません。可変オブジェクトの場合:

i = [[] for _ in xrange(5)]   # range(5) on Python 3.x
于 2012-11-16T01:32:10.383 に答える
1

リスト内包表記の使用:

i = [0 for j in range(5)]

これを使用して、より複雑なアレイを構築することもできます。

A = [[0 for i in range(5)] for j in range(5)]
于 2012-11-16T01:31:27.910 に答える