リスト(List)の添削・変更その他の方法

26802 ワード

一、リストの紹介
リストはpythonの基礎データ型の一つで、他の言語にもリストに似たデータ型があります.例えばjsでは配列と呼ばれています.彼は[]で囲まれていて、要素ごとにカンマで区切られています.そして、li=[‘fuyong’,123,Ture,(1,2,3,’123’),[1,2,3,‘小明’,],{‘name’:’fuyong’}]など、さまざまなデータ型を格納することができます.リストは文字列に比べて異なるデータ型だけでなく、大量のデータを格納することができ、32ビットpythonの制限は536870912要素、64ビットpythonの制限は1152921504606846975要素である.また、リストは秩序正しく、インデックス値があり、スライス可能で、値を取りやすい.
リストの添削やその他の方法について詳しく説明します.
二、リスト要素を増やす方法
注意:文字列のメソッドとは異なり、リスト操作のすべてのメソッドは、新しいリストを作成するのではなく、既存のリストの値を変更します!!!
◆append()メソッド:
次のように、リストの最後に要素を追加します.
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.append(' ')
3 print(name_list)
4 #     [' ', ' ', ' ', ' ', ' ', ' ']

◆insert()メソッド:
この方法は、リストの指定したインデックスの場所にコンテンツを挿入し、後のパラメータでインデックス値を渡し、要素を挿入します.
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.insert(2,' ')
3 print(name_list)
4 #    :[' ', ' ', ' ', ' ', ' ', ' ']

◆extend()メソッド:
この方法は、リストを拡張し、いくつかの要素を追加するために使用されます.後のパラメータは文字列、リスト、および任意の反復可能なオブジェクトです.python解釈器は、このオブジェクトを分割してリストに追加します.たとえば、次のようにします.
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.extend(' ')
3 name_list.extend('  ')
4 name_list.extend("fu")
5 name_list.extend(['a','b','c'])
6 name_list.extend(range(3))
7 print(name_list)
# :[' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'f', 'u', 'a', 'b', 'c', 0, 1, 2]

 
三、リスト要素を削除する方法
◆pop()メソッド:
この方法は、リスト内の指定したインデックスの位置に対応する値を削除し、削除されたオブジェクトを返します.パラメータはインデックス値で、デフォルトではリストの最後の要素を削除します.次のようにします.
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.pop()
3 name_list.pop(2)
4 name_print(list)
5    [' ', ' ', ' ']

◆remove()メソッド:
この方法は、リスト内の指定された要素を削除するために使用されます.パラメータは、次のように指定された要素です(見つからない場合はエラーが発生します).
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.remove(' ')
3 print(name_list)
4 #    :[' ', ' ', ' ', ' ']
5 #  :               ,     

◆clear()メソッド:
このメソッドは、リスト内のすべての値をクリアするために使用されます(元のリストは空のリストになります).たとえば、次のようにします.
1 name_list = [' ',' ',' ',' ',' ',]
2 name_list.clear()
3 print(name_list)
# []

◆delメソッド:
このメソッドは、リスト全体を削除するために使用されます(削除後、このリストは存在しません)
1 name_list = [' ',' ',' ',' ',' ',]
2 del name_list
3 print(name_list)
4 #   :NameError: name 'name_list' is not defined

 
四、リスト要素の修正方法
要素を変更する方法は、次のように、インデックスとスライスの方法を使用します.
◆索引:
list_name[0]='修正後の値'
◆スライス:
list_name[0:3] = [a,b,c]   
注意:後で変更する値の総数は、スライスの長さに対応しないことができます.例えば、[0:3]このスライスの長さは3で、後ろに2つまたは4つの要素があるリストを渡すことができます.この場合、スライスに対応する値を削除し、後ろのリストを順番に挿入します.
後に文字列を割り当てることもできます.この場合、スライスに対応する値を削除し、後の文字列を分解して順番に挿入します.
list_name[0:3] = 'fuyong'
name_list = [' ',' ',' ',' ',' ',]
name_list[2]= 'sun'
print(name_list)
# :[' ', ' ', 'sun', ' ', ' ']

name_list[2]= name_list[2].title()
print(name_list)
# :[' ', ' ', 'Sun', ' ', ' ']

name_list[0:2] = ['zhao','qian']
print(name_list)
# :['zhao', 'qian', 'Sun', ' ', ' ']

name_list[0:2] = ['zhao','qian','zheng']
print(name_list)
# :['zhao', 'qian', 'zheng', 'Sun', ' ', ' ']

name_list[0:2] = ['zhao']
print(name_list)
# :['zhao', 'zheng', 'Sun', ' ', ' ']

name_list[0:3] = 'fuyong'
print(name_list)
# :['f', 'u', 'y', 'o', 'n', 'g', ' ', ' ']

 
五、リスト要素を照会する方法
要素をクエリーする方法は、次のようにインデックスとスライスの方法を使用します.
◆索引:
list_name[0] 
◆スライス:
list_name[0:3]
list_name[0:3:2] 
 1 name_list = [' ',' ',' ',' ',' ',]
 2 print(name_list[0])   #  
 3 print(name_list[2])   #  
 4 
 5 print(name_list[0:2])   # [' ', ' ']
 6 print(name_list[1:])    # [' ', ' ', ' ', ' ']
 7 
 8 print(name_list[0:4:2]) # [' ', ' ']
 9 print(name_list[:4:2])  # [' ', ' ']
10 
11 print(name_list[4:0:-1]) #[' ', ' ', ' ', ' ']
12 print(name_list[-2:0:-1]) #[' ', ' ', ' ']

また、リスト内のすべての要素をクエリーする必要がある場合は、forループで次のように実現できます.
1 name_list = [' ',' ',' ',' ',' ',]
2 for name in name_list:
3     print(name)

'''

趙銭孫李周
 '''
 
六、リストのその他の方法
◆len(list)アプローチ:
このメソッドは、次のようにリストの長さを計算するために使用できます.
1 name_list = [' ',' ',' ',' ',' ',]
2 print(len(name_list))
3 #     5

◆count()メソッド:
このメソッドは、次のようにリスト内の要素が表示される回数を計算します.
1 name_list = [' ',' ',' ',' ',' ',' ']
2 print(name_list.count(' '))
3 #      2

◆sort()メソッド:
サブメソッドは、リストをソートします(リスト内の要素は数値タイプにします)、デフォルトは正の順序で、逆の順序を指定できます(reverse=True)
1 num_list = [1,3,6,2,5,0,8]
2 num_list.sort() #       
3 print(num_list)
4 #     :[0, 1, 2, 3, 5, 6, 8]
5 
6 num_list.sort(reverse=True)  #  reverse True      
7 print(num_list)
8 #     [8, 6, 5, 3, 2, 1, 0]

▷reverse():
この方法は、リスト内のすべての要素を反転させることです.ソートではなく、すべての要素を逆さまにすることに注意してください.
1 name_list = [' ',' ',' ',' ',' ']
2 name_list.reverse()
3 print(name_list)
4 #   :[' ', ' ', ' ', ' ', ' ']

 
◆join()メソッド:
このメソッドの使用方法は、文字列のjoinメソッドと同様に、リスト内の要素を指定した文字で接続します.文字はスペース、空の文字、下線、任意の文字で、次のようになります.
1 name_list = [' ',' ',' ',' ',' ']
2 print('*'.join(name_list))   #   : * * * * 
3 print(' '.join(name_list))   #
4 print(''.join(name_list))    #
5 print('__'.join(name_list))  #   : __ __ __ __ 

注意:この方法でリストを文字列形式に変換できます.
七、リストの入れ子
リストにはすべての要素を入れることができるので、もちろんリストをネストすることもできます.
リスト内のリストを削除して調べる必要がある場合は、まず中のリストにインデックスしてから操作すればいいです.以下のようにします.
name_list = [' ',' ',' ',[' ',' ',' '],' ',' ',' ']

print(name_list[3][1]) #
print(name_list[3][0:2]) #[' ', ' ']

name_list[3][1]= 'fu'
print(name_list)
# :[' ', ' ', ' ', [' ', 'fu', ' '], ' ', ' ', ' ']

name_list[3].pop(1)
print(name_list)
# [' ', ' ', ' ', [' ', ' '], ' ', ' ', ' ']

name_list[3].remove(' ')
print(name_list)
# :[' ', ' ', ' ', [' '], ' ', ' ', ' ']

強調:文字列のメソッドとは異なり、すべてのリスト操作のメソッドは、新しいリストを作成するのではなく、既存のリストの値を変更します!!!
転載先:https://www.cnblogs.com/fu-yong/p/8066422.html