python学習ノート--リスト(list)


C/C++などの言語を学んだ後、Pythonのリストは理解するのは難しくなく、PythonのリストはC/C++の配列に似ているが、配列よりも操作が柔軟である.リストは、特定の順序で並べられた一連の要素からなり、同じリストの要素は同じタイプであってもよいし、異なるタイプであってもよい.
一、リストを作成する.
次の方法で空のリストを作成できます.
first_list=[]

もちろん、作成時に直接値を割り当てることもできます.
>>> first_list=[1,2,3,4,5,6]
>>> first_list
[1, 2, 3, 4, 5, 6]

1つのリストを別のリストの要素としてネストすることもできます
>>> list1=[1,2]
>>> list2=[3,4]
>>> lists=[list1,list2]
>>> lists
[[1, 2], [3, 4]]
>>> lists[0][0]
1
>>> lists[1][1]
4

メソッドrange()を使用して数値リストを作成することもできます.
コマンドラインに直接書くとエラーが発生するので、ファイルに書いて実行すればいいです.
test_list=list(range(2,10))
print(test_list)

実行結果:
[2, 3, 4, 5, 6, 7, 8, 9]

二、アクセスリスト
1、インデックスを使用してリストにアクセスする場合、インデックスは正の値、0、負の値とすることができます.
>>> first_list=[1,2,3,4,5,6]
>>> first_list[1]
2
>>> first_list[-1]
6

2、スライスを使用してリストにアクセスする.形式はlist[index 1,index 2]であり、この方法はlistに[index 1,index 2]と下付きの要素を返す.
>>> test_list=[2,5,8,3,6,9]
>>> slice_list=test_list[1:5]
>>> slice_list
[5, 8, 3, 6]
>>> slice_list=test_list[2:]
>>> slice_list
[8, 3, 6, 9]
>>> slice_list=test_list[:3]
>>> slice_list
[2, 5, 8]

3、forを使う..in..リスト内の要素を巡回
>>> test_list=[2,5,8,3,6,9]
>>> for val in test_list:
	print(val)

	
2
5
8
3
6
9

三、要素を追加する.
リストには3つの方法で要素を追加します::1、方法append(obj)を使用してリストの末尾に要素objを追加します.この要素はリストで、2、方法は方法insert(index,obj)を使用して位置indexに要素objを追加します.Insert(index,obj)メソッドを使用する場合は、Pythonのリストの下付き文字が0から始まることに注意してください.3、extend(list)を使用してリストの末尾に別のリストのすべての要素を追加し、一度に複数の要素を追加する.
>>> first_list
[1, 2, 3, 4, 5, 6]
>>> first_list.append(7)
>>> first_list
[1, 2, 3, 4, 5, 6, 7]
>>> first_list.insert(2,0)
>>> first_list
[1, 2, 0, 3, 4, 5, 6, 7]
>>> list1=[1,2]
>>> list2=[3,4]
>>> list1.extend(list2)
>>> list1
[1, 2, 3, 4]
>>> list1=[1,2]
>>> list2=[3,4]
>>> list1.append(list2)  #   extend(list)   
>>> list1
[1, 2, [3, 4]]

四、要素を削除する.
要素を削除するには3つの方法があります:1、del文を使用して要素を削除します;2、メソッドpop()メソッドを使用してリストの末尾要素を削除するか、pop(index)を使用してリストindexの位置を削除する関数で、pop()メソッドは削除する要素の値を返します.3、remove(obj)を使用してインデックスではなく値に基づいて要素を直接削除する.
>>> first_list=[1,2,0,3,4,5,6,7]
>>> del first_list[0]    #  first_list[0]
>>> first_list
[2, 0, 3, 4, 5, 6, 7]
>>> a=first_list.pop()   #  first_list[6]
>>> a
7
>>> a=first_list.pop(0)  #  first_list[0]
>>> a
2
>>> first_list.remove(0)   #  0
>>> first_list
[3, 4, 5, 6]
五、並べ替え
1、メソッドsort()を使用してリストを永続的にソートし、文字列であればアルファベット順にソートし、デフォルトの昇順にします.
>>> first_list
[2, 0, 3, 6]
>>> first_list.sort()
>>> first_list
[0, 2, 3, 6]
はまた、パラメータreverse=Trueをsort()に伝達して降順ソートすることもできる.
>>> test_list=[2,0,3,6]
>>> test_list.sort(reverse=True)
>>> test_list
[6, 3, 2, 0]

2、sorted()を使用した場合のソート:
>>> first_list=[2,0,3,6]
>>> print(sorted(first_list))
[0, 2, 3, 6]
>>> first_list
[2, 0, 3, 6]
は、パラメータreverse=Trueをsorted()に渡して降順ソートすることもできる.
>>> first_list=[2,0,3,6]
>>> print(sorted(first_list,reverse=True))
[6, 3, 2, 0]
>>> first_list
[2, 0, 3, 6]

六、その他の方法
1、メソッドIndex(obj)はobjのlistにおける下付き文字を返し、同じ値が複数ある場合は下付き文字が最小であり、objがlistにない場合はエラーが発生する.
>>> test_list=[2,0,3,6]
>>> test_list.index(2)
0     #test_list[0]=2
>>> test_list.index(1)
Traceback (most recent call last):
  File "", line 1, in 
    test_list.index(1)
ValueError: 1 is not in list
>>> test_list=[1,2,1]
>>> test_list.index(1)
0
、メソッドcount(obj)objがlistに現れる回数を計算するために使用される
>>> test_list=[1,2,1]
>>> test_list.count(1)
2
>>> test_list.count(2)
1
>>> test_list.count(3)
0
3、len(list)を使用してリストリストの長さを決定する
>>> test_list=[1,2,3,4,5,6,7,8,9,0]
>>> len(test_list)
10
4、clear()を使用してリストをクリア
>>> test_list=[1,2,3,4,5,6,7,8,9,0]
>>> test_list
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> test_list.clear()
>>> test_list
[]