🐍

サラッとPython入門 ~標準入出力からデータ構造まで~

2021/01/30に公開約2,700字

標準入出力

出力

print("Hello")
Hello

入力

name = input("Please input your name -> ")
print("Hello {}!!".format(name))
Please input your name -> xxx
Hello xxx!!

データ構造

List

  • 作成
fruits = ["banana", "apple", "orange"]
print(fruits)
['banana', 'apple', 'orange']
  • 値の追加
fruits.append("melon")
print(fruits)
['banana', 'apple', 'orange', 'melon']
  • 値の更新
fruits[0] = "grape"
print(fruits)
['grape', 'apple', 'orange', 'melon']
  • 値の取り出し
# インデックス指定無し(最後尾から取り出し)
retrieved_fruit = fruits.pop()
print(fruits)
print(retrieved_fruit)
['grape', 'apple', 'orange']
melon
# インデックス指定有り
retrieved_fruit = fruits.pop(0)
print(fruits)
print(retrieved_fruit)
['apple', 'orange']
grape
  • 値の削除
# 要素名指定による削除
fruits.remove("orange")
print(fruits)
['apple']
# インデックス指定による削除
del fruits[0]
print(fruits)
[]
  • スライスによる値取得
# [先頭インデックス:後尾インデックス+1]を指定して取得
# 以下の例でインデックス0から1まで取得したい場合、[0:2]をスライス指定する
fruits = ["banana", "apple", "orange"]
print(fruits[0:2])
['banana', 'apple']
# ステップ取得の場合は、[先頭インデックス:後尾インデックス+1:ステップ数]で取得
# 以下のベクトルに対し1から2個飛ばしで取得したい場合
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(numbers[::2])
[1, 3, 5, 7, 9]
# 逆取得したい場合は[先頭インデックス:後尾インデックス+1:-1]で取得
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(numbers[::-1])
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
# 後尾の値からインデックス指定して取得したい場合は[-(後尾からの順番)]で取得する
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(numbers[-1])
10

Set

  • 作成
# リストは[]で定義するのに対し、setでは{}で定義する
fruits = {"banana", "orange", "melon"}
{'banana', 'orange', 'melon'}
  • 値の追加(同じ値は追加できない)
fruits.add("grape")
print(fruits)
{'banana', 'grape', 'orange', 'melon'}

Dict

  • 作成
# {}にkey:valueを設定して定義
person_info = {"name": "kite", "age": 15}
print(person_info)
{'name': 'kite', 'age': 15}
  • 値の取得
name = person_info.get("name")
print(name)
kite
  • 値の追加
person_info["height"] = 180
print(person_info)
{'name': 'kite', 'age': 15, 'height': 180}
  • 値の更新
# 既に設定されているheightに対し、値の更新を行う
person_info["height"] = 185
print(person_info)
{'name': 'kite', 'age': 15, 'height': 185}
  • 値の削除
# 値を指定して削除
del person_info["height"]
print(person_info)
{'name': 'kite', 'age': 15}

Tuple

# ()で定義する
# 値の変更を行う場合は、Listにキャストしてから変更する必要がある
name = ("kite", "taylor", "nancy")
converted_name  = list(name)
converted_name[0] = "michel"
converted_name.remove("nancy")
name = tuple(converted_name)
print(name)
('michel', 'taylor')

Discussion

ログインするとコメントできます