pythonリストの中かっこ[]とコロン:の役割
1907 ワード
pythonリストの中かっこ[]とコロン:の役割
中かっこ[]:リストまたは参照リスト、配列、文字列、およびメタグループ内の要素の位置を定義します.
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
コロン:スライス、ステップサイズを定義します.
a[:n]は0番目の要素からn番目の要素(nを含まない)を表し、a[1:]はリストの1番目の要素から最後の要素を表す.
List 1[:3:2],tul 1[3:6:2](注意3:6はインデックス3~5であり、6を含まない)
L[2]リストの3番目の要素、すなわち2番目の要素L[-2]リストの最後から2番目の要素L[1:]を読み出し、2番目の要素からリストを切り取る
出力結果:
python 2 Dリストの作成
例:
リスト内のaはa[:]とは異なる.
関数id()によって表示されます.
得られた2つの値が異なることがわかります.
または直接実行:
戻り値は:Falseです.
簡単に言えば、a[:]はaを作成するコピーであり、コードでa[:]を操作すると、aの値は変更されません.一方,aを直接操作するとappend()などの操作の影響を受ける.
range()関数は、forループで一般的に使用される整数リストを作成します.
関数構文
パラメータの説明: start:カウントはstartから開始します.デフォルトは0からです.例えばrange(5)はrange(0,5)に等価である. stop:stopが終了するまでカウントされますが、stopは含まれません.例:range(0,5)は[0,1,2,3,4]5 なし step:ステップ長、デフォルトは1です.例えば、range(0,5)はrange(0,5,1) に等価である逆順
xrange()関数の使い方はrangeと全く同じで、生成されるのは配列ではなくジェネレータです.
中かっこ[]:リストまたは参照リスト、配列、文字列、およびメタグループ内の要素の位置を定義します.
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
コロン:スライス、ステップサイズを定義します.
a[:n]は0番目の要素からn番目の要素(nを含まない)を表し、a[1:]はリストの1番目の要素から最後の要素を表す.
List 1[:3:2],tul 1[3:6:2](注意3:6はインデックス3~5であり、6を含まない)
L[2]リストの3番目の要素、すなわち2番目の要素L[-2]リストの最後から2番目の要素L[1:]を読み出し、2番目の要素からリストを切り取る
list1 = [1,2,3,4,5]
print list1
print list1[:-1]
出力結果:
[1, 2, 3, 4, 5]
[1, 2, 3, 4]
python 2 Dリストの作成
list_2d = [[0 for col in range(cols)] for row in range(rows)]
例:
>>> list_2d = [ [0 for i in range(5)] for i in range(4)]
>>> list_2d[0].append(3)
>>> list_2d[0].append(5)
>>> list_2d[2].append(7)
>>> list_2d
[[0, 0, 0, 0, 0, 3, 5], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0]]
リスト内のaはa[:]とは異なる.
関数id()によって表示されます.
a = [1, 2, 3]
id(a)
id(a[:])
得られた2つの値が異なることがわかります.
または直接実行:
a is a[:]
戻り値は:Falseです.
簡単に言えば、a[:]はaを作成するコピーであり、コードでa[:]を操作すると、aの値は変更されません.一方,aを直接操作するとappend()などの操作の影響を受ける.
range()関数は、forループで一般的に使用される整数リストを作成します.
関数構文
range(start, stop[, step])
パラメータの説明:
>>> range(100,19,-5)
:[100, 95, 90, 85, 80, 75, 70, 65, 60, 55, 50, 45, 40, 35, 30, 25, 20]
xrange()関数の使い方はrangeと全く同じで、生成されるのは配列ではなくジェネレータです.