Pythonのリスト
宣言方法
リストの宣言方法はほかのプログラム言語とほとんど同じ
l=[1,2,3,4,5,6,7,8,9] print(type(l),l) #<class 'list'> [1, 2, 3, 4, 5, 6, 7, 8, 9]
要素の取り出し方
l=[1,2,3,4,5,6,7,8,9] #2番目の要素を取り出す print(l[1]) #2 #最後から2番目の要素を取り出す print(l[-1]) #9 #1番目から6番目までの要素を取り出す print(l[0:5]) #[1, 2, 3, 4, 5] #最初から6番目までの要素を取り出す print(l[:5]) #[1, 2, 3, 4, 5] #3番目から最後までの数字を取り出す print(l[2:]) #[3, 4, 5, 6, 7, 8, 9] #10番目は存在しないためエラーになる print(l[10]) #IndexError: list index out of range #リストの長さを出力する print(len(l)) #9 #文字列をリストに分解する print(list('abcdefg')) #['a', 'b', 'c', 'd', 'e', 'f', 'g'] #2つおきに要素を取り出す print(l[::2]) #[1, 3, 5, 7, 9] #多重リストの取り出し方 n = [[1,2,3,],['a','b','c']] #2つ目のリストを取り出す print(n[0]) #[1, 2, 3] #2つ目のリストの1つ目の要素を取り出す print(n[1][0]) #a
要素の変更
l=[1,2,3,4,5,6,7,8,9] print(l) #[1, 2, 3, 4, 5, 6, 7, 8, 9] #1番目のリストの中身を書き換える l[0] = 0 print(l) #[0, 2, 3, 4, 5, 6, 7, 8, 9] #1番目から3番目までの要素を入れ替える l[0:3] = [3,2,0] print(l) #[3, 2, 0, 4, 5, 6, 7, 8, 9] #1番目から3番目までの要素を取り除く l[0:3] = [] print(l) #[4, 5, 6, 7, 8, 9] #要素をすべて取り除く l[:] = [] print(l) #[]
要素の追加、取り出し、削除
n=[1,2,3] #リストの末尾に要素を追加する n.append(4) print(n) #[1, 2, 3, 4] #指定した箇所(0番目)に要素を追加する n.insert(0,2) print(n) #[2, 1, 2, 3, 4] #リストの末尾から要素を取り出す n.pop() print(n) #[2, 1, 2, 3] #指定した箇所(0番目)から要素を取り出す n.pop(0) print(n) #[1, 2, 3] #要素を削除する del n[0] print(n) #[2, 3] #指定した要素を削除する n.remove(2) print(n) #[3] #要素が存在しない場合はエラーになる n.remove(2) #ValueError: list.remove(x): x not in list
リストの結合
#データを結合する a = [1,2,3,4] b = [5,6,7,8] x = a+b print(x) #[1, 2, 3, 4, 5, 6, 7, 8] a.extend(b) print(a) #[1, 2, 3, 4, 5, 6, 7, 8]
リストのその他の機能
l =[1,2,3,4,1,2,3] #特定の要素がどこにあるかを探す print(l.index(3)) #2 #3番目以降の要素から特定の要素がどこにあるのかを探す print(l.index(3,3)) #6 #ソート #昇順にソートする l.sort() print(l) #[1, 1, 2, 2, 3, 3, 4] #降順にソートする l.sort(reverse=True) print(l) #[4, 3, 3, 2, 2, 1, 1] #ソートを入れ替える l.reverse() print(l) #[1, 1, 2, 2, 3, 3, 4] #文字列からリストに変換する s = 'My name is ushipay' to_split = s.split(' ') print(to_split) #['My', 'name', 'is', 'ushipay'] #リストの文字列を空白で結合する r = ' '.join(to_split) print(r) #My name is ushipay
以上