14言語・590の書き方
CODE ATLAS / 文法辞典

Pythonの書き方

よく使う文法・タグ・操作を、短い例で。44項目から探せます。

44 / 44項目

変数と表示

値に名前を付けて、結果を確認します。

main.py
name = "海"
print(name)
説明と練習この項目

条件分岐と字下げ

条件に応じて、処理を分けます。

main.py
age = 20
if age >= 18:
    print("18歳以上です")
else:
    print("18歳未満です")
説明と練習この項目

繰り返しとrange

項目ごと、回数ごとに処理を行います。

main.py
for number in range(1, 4):
    print(number)
説明と練習この項目

関数

繰り返し使う処理をまとめます。

main.py
def add(a, b):
    return a + b

print(add(2, 3))
説明と練習この項目

リストと辞書

一覧と、名前付きの情報を扱います。

main.py
fruits = ["りんご", "みかん"]
print(fruits[0])
説明と練習この項目

文字列とf-string

値を組み合わせて、分かりやすい文章にします。

main.py
name = "海"
print(f"こんにちは、{name}さん")
説明と練習この項目

ファイルを読む

保存してある文章を、プログラムで使います。

main.py
with open("notes.txt", encoding="utf-8") as file:
    print(file.read())
説明と練習この項目

コメント

コードにメモを残す。

main.py
# 名前を表示する
print("海")
この項目

計算・代入

四則演算、整数除算、余り、累乗。

main.py
print(10 / 3)
print(10 // 3)
print(10 % 3)
print(2 ** 3)
total = 10
total += 2
この項目

比較・論理演算

条件を組み合わせる。

main.py
age = 20
print(age == 20)
print(age >= 18 and age < 65)
print(not False)
この項目

None・is

値がない状態を確認する。

main.py
name = None
if name is None:
    print("名前なし")
この項目

型変換・type

数値や文字列に変換する。

main.py
print(int("20") + 1)
print(float("1.5"))
print(str(20))
print(type(20))
この項目

入力

入力された文字列を受け取る。

main.py
name = input("名前:")
print(name)

inputの結果は文字列です。数値ならintなどで変換します。

この項目

文字列の結合・長さ

文字をつなぎ、文字数を調べる。

main.py
name = "海"
print("こんにちは、" + name)
print(len(name))
この項目

文字列の操作

空白除去、分割、置換、結合。

main.py
print(" 海 ".strip())
print("海,空".split(","))
print("海です".replace("海", "空"))
print("、".join(["海", "空"]))
この項目

スライス

文字列やリストの一部分を取り出す。

main.py
text = "hello"
print(text[0])
print(text[1:4])
print(text[-1])
この項目

in・三項の書き方

含まれるか調べ、条件で値を選ぶ。

main.py
print("海" in ["海", "空"])
age = 20
label = "成人" if age >= 18 else "未成年"
この項目

while

条件が成立する間、繰り返す。

main.py
count = 0
while count < 3:
    print(count)
    count += 1
この項目

break・continue

繰り返しを終了、または一回分を飛ばす。

main.py
for n in [1, 2, 3, 4]:
    if n == 2:
        continue
    if n == 4:
        break
    print(n)
この項目

enumerate・zip

番号付きで処理し、複数の一覧を並行処理する。

main.py
for i, name in enumerate(["海", "空"], start=1):
    print(i, name)
for name, age in zip(["海", "空"], [20, 21]):
    print(name, age)
この項目

引数の初期値・名前付き引数

省略時の値や引数名を使う。

main.py
def greet(name="ゲスト"):
    return "こんにちは、" + name

print(greet(name="海"))
この項目

可変長引数

複数の引数をまとめて受け取る。

main.py
def show(*names):
    for name in names:
        print(name)

show("海", "空")
この項目

lambda

小さな関数を一行で書く。

main.py
double = lambda n: n * 2
print(double(3))
この項目

pass

何もしない処理を置く。

main.py
def later():
    pass
この項目

match

値のパターンで分岐する。

main.py
color = "red"
match color:
    case "red":
        print("赤")
    case _:
        print("その他")

Python 3.10以降で使えます。

この項目

リストの追加・削除

末尾に追加し、最後の値を取り除く。

main.py
items = ["りんご"]
items.append("みかん")
last = items.pop()
この項目

リスト内包表記

各値を変えて新しいリストを作る。

main.py
doubled = [n * 2 for n in [1, 2, 3]]
adults = [n for n in [15, 20, 30] if n >= 18]
この項目

辞書の読み書き・get

キーで値を取得し、変更する。

main.py
user = {"name": "海"}
user["age"] = 20
print(user.get("nickname", "名無し"))
この項目

辞書の反復

キーと値を順に取り出す。

main.py
user = {"name": "海", "age": 20}
for key, value in user.items():
    print(key, value)
この項目

タプル・アンパック

複数の値をまとめ、変数に分ける。

main.py
pair = ("海", 20)
name, age = pair
この項目

集合・重複除去

同じ値を一つにまとめる。

main.py
names = {"海", "空", "海"}
names.add("陸")
print(len(names))
この項目

sorted・sort

並べ替えたコピー、または元のリストを変更。

main.py
nums = [3, 1, 2]
print(sorted(nums))
nums.sort()
この項目

sum・min・max

合計、最小、最大を求める。

main.py
nums = [1, 2, 3]
print(sum(nums))
print(min(nums))
print(max(nums))
この項目

例外処理

エラーに応じて処理を分ける。

main.py
try:
    number = int("海")
except ValueError:
    print("数字を入力してください")
finally:
    print("終了")
この項目

raise

自分で例外を発生させる。

main.py
age = -1
if age < 0:
    raise ValueError("年齢は0以上です")
この項目

ファイルへ書き込む

文字列を保存する。

main.py
with open("notes.txt", "w", encoding="utf-8") as file:
    file.write("こんにちは")

wは既存ファイルの内容を上書きします。追加ならaを使います。

この項目

import・from

別のモジュールの機能を使う。

main.py
import math
from datetime import date
print(math.sqrt(9))
print(date.today())
この項目

JSON

JSON文字列と辞書を変換する。

main.py
import json
text = json.dumps({"name": "海"}, ensure_ascii=False)
user = json.loads(text)
この項目

CSV

CSVの各行を読む。

main.py
import csv
with open("data.csv", newline="", encoding="utf-8") as file:
    for row in csv.reader(file):
        print(row)
この項目

pathlib

ファイルの場所や存在を扱う。

main.py
from pathlib import Path
path = Path("notes.txt")
print(path.exists())
この項目

class

データと処理を一つにまとめる。

main.py
class User:
    def __init__(self, name):
        self.name = name

    def greet(self):
        return "こんにちは、" + self.name

user = User("海")
この項目

実行の入口

直接実行された場合だけ処理する。

main.py
def main():
    print("こんにちは")

if __name__ == "__main__":
    main()
この項目

型ヒント

引数と返り値の型を示す。

main.py
def add(a: int, b: int) -> int:
    return a + b

Python自体はこの型を実行時に強制しません。

この項目

yield

値を一つずつ返す。

main.py
def numbers():
    for n in range(3):
        yield n

for n in numbers():
    print(n)
この項目