今回は、AI開発だけでなく、プログラミングでは必須の配列について解説していきます。今回はその中でも、基礎的な配列操作について説明します。

前回の復習

前回解説した配列の説明画像をご確認ください。

配列の定義方法について

配列に初めから値をセットする場合

# 配列に初めから値をセットする場合
list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

配列に後から値を追加する方法

list2 = []
list2.append(1)
print(list2)
# 出力結果
# [1]
list2.append(10)
list2.append(12)
list2.append(14)
list2.append(2)
list2.append(5)
list2.append(4)
list2.append(6)
list2.append(7)
print(list2)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

配列のn番目の値を取得する

配列は前回の説明にも書いた通り、先頭の値を0番目としています。

list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
# 先頭(0番目)を取得する場合
print(list1[0])
# 12を取得する場合、先頭を0番目とした場合2番目なので
print(list1[2])

配列の後ろからn番目(Python特有)

Pythonでは後ろから取得する場合は、-(マイナス)を使うことで取得できる

list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
# 1番後ろ(7)を取得する場合
print(list1[-1])
# 後ろから3番目(4)を取得する場合
print(list1[-3])

配列のn番目からk – 1番目を取得する

Pythonではスライスと呼ばれる配列操作があります。これを使うと例えば3番目から6番目の4つを取得することがきます

スライスで3〜6番目を取得するためには[ ]の中に3から7の前までという意味で[3:7]と書きます

list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

# 3〜6番目までの配列を取得
# [14, 2, 5, 4]を取得予定
print(list1[3:7])
# 出力結果
# [14, 2, 5, 4]

配列の中身をソートする

配列自身を昇順もしくは降順にソートする。

配列を昇順にソートする場合

# 配列に初めから値をセットする場合
list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

# 昇順にソートする
list1.sort()
print(list1)
# 出力結果
# [1, 2, 4, 5, 6, 7, 10, 12, 14]

降順にソートする場合

# 配列に初めから値をセットする場合
list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

# 降順にソートする
list1.sort(reverse=True)
print(list1)
# 出力結果
# [14, 12, 10, 7, 6, 5, 4, 2, 1]

配列の中身をソートする2

配列を昇順もしくは降順にソートした配列を新しく作成する

昇順にソートする場合

# 配列に初めから値をセットする場合
list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

# 昇順にソートする
sorted_list = sorted(list1)
print(list1)
# list1はそのまま [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(sorted_list)
# sorted_listはソートされた結果が入っている
# [1, 2, 4, 5, 6, 7, 10, 12, 14]

降順にソートする

list1 = [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(list1)
# 出力結果
# [1, 10, 12, 14, 2, 5, 4, 6, 7]

# 降順にソートする
sorted_list = sorted(list1, reverse=True)
print(list1)
# list1はそのまま [1, 10, 12, 14, 2, 5, 4, 6, 7]
print(sorted_list)
# sorted_listはソートされた結果が入っている
# [14, 12, 10, 7, 6, 5, 4, 2, 1]

配列の中から重複している要素を排除する

Pythonのset型(集合)に変換した後、list型(配列)に戻すことで重複している要素を排除できます。set型は集合型とも言い、重複は持てない形となります。set型は{ }で表します。

list3 = [1, 1, 2, 3, 2, 3, 1, 1, 3, 4]
print(list3, type(list3))
# 出力結果 [1, 1, 2, 3, 2, 3, 1, 1, 3, 4] <class 'list'>
set3 = set(list3)
print(set3, type(set3))
# 出力結果 {1, 2, 3, 4} <class 'set'>
list4 = list(set3)
print(list4, type(list4))
# 出力結果 [1, 2, 3, 4] <class 'list'>

終わりに

今回は、配列の基礎的な問い合わせ方法として、値の取得やスライス、ソート、重複排除などを説明しました。次回は、配列と相性の良い繰り返し文(for文)の解説を行います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です