基本構文
Pythonはインデントを使って構造を表します。
# コメントはシャープから始まります
name = "Python" # 変数の宣言
print(f"Hello, {name}!")
💡 Tips
📌
インデントはスペース4つが標準
📌
行末のセミコロンは不要
🔍 PEP 8はPythonの公式スタイルガイドです
データ型
🔢
int: 整数 (-100, 0, 42)
🔣
float: 浮動小数点 (3.14, -0.01)
🔤
str: 文字列 ("Hello", 'World')
✅
bool: 真偽値 (True, False)
📋
list: リスト [1, 2, 3]
🔑
dict: 辞書 {"key": "value"}
📦
tuple: タプル (1, 2, 3)
🧩
set: 集合 {1, 2, 3}
x = 10 # int
y = "Hello" # str
z = [1, 2, 3] # list
制御構造
条件分岐:
if condition:
# 条件が真の時の処理
elif another_condition:
# 別の条件が真の時の処理
else:
# いずれも偽の時の処理
ループ:
# forループ
for item in iterable:
print(item)
# whileループ
while condition:
# 処理
if exit_condition:
break # ループを抜ける
💡 Pythonのfor文は他の言語と異なり、イテラブル(反復可能)オブジェクトの要素を順に処理します
関数
関数はdefキーワードで定義します:
def greet(name, greeting="Hello"):
"""関数の説明(ドキュメント文字列)"""
return f"{greeting}, {name}!"
# 関数の呼び出し
message = greet("Python")
print(message) # "Hello, Python!"
# キーワード引数
message = greet(greeting="Hi", name="Coder")
print(message) # "Hi, Coder!"
📝 関数のポイント
🔄
戻り値はreturnで指定
🔣
引数にデフォルト値を設定可能
📚
ドキュメント文字列で説明を書く
例外処理
try-except構文でエラーを処理します:
try:
result = 10 / 0 # ゼロ除算エラー
except ZeroDivisionError:
print("ゼロで割ることはできません")
except Exception as e:
print(f"エラーが発生しました: {e}")
else:
print("エラーは発生しませんでした")
finally:
print("この部分は常に実行されます")
🛡️
except: エラーをキャッチして処理
✨
else: エラーがない場合に実行
🔄
finally: 常に実行される部分
モジュールとパッケージ
import文でモジュールを読み込みます:
# モジュール全体をインポート
import math
print(math.pi) # 3.141592...
# 特定の関数や変数だけをインポート
from datetime import datetime
now = datetime.now()
# 別名をつける
import pandas as pd
import numpy as np
📦 主要ライブラリ
📊
pandas: データ分析
🧮
numpy: 数値計算
📈
matplotlib: データ可視化
🤖
scikit-learn: 機械学習
リスト操作
リストは可変で多目的に使えるデータ構造です:
# リストの作成
fruits = ["apple", "banana", "cherry"]
# 要素へのアクセス
first_fruit = fruits[0] # "apple"
last_fruit = fruits[-1] # "cherry"
# スライス
subset = fruits[0:2] # ["apple", "banana"]
# 追加と削除
fruits.append("orange") # 末尾に追加
fruits.insert(1, "mango") # 指定位置に挿入
removed = fruits.pop() # 末尾を削除して返す
fruits.remove("banana") # 値を指定して削除
# リスト内包表記
squares = [x**2 for x in range(10)]
🔍 リスト内包表記は簡潔で効率的なリスト生成方法です
辞書操作
辞書はキーと値のペアを格納します:
# 辞書の作成
person = {
"name": "Alice",
"age": 25,
"skills": ["Python", "JavaScript"]
}
# 値の取得
name = person["name"] # "Alice"
# キーがない場合にデフォルト値を返す
height = person.get("height", 170)
# 追加と更新
person["location"] = "Tokyo" # 新しいキーと値を追加
person["age"] = 26 # 既存の値を更新
# 辞書内包表記
squares = {x: x**2 for x in range(5)}
🔑
キーはイミュータブル(不変)である必要があります
🔍
in演算子でキーの存在を確認できます
文字列操作
Pythonの文字列はイミュータブル(不変)です:
# 文字列の作成
text = "Hello, Python!"
# インデックスとスライス
first_char = text[0] # "H"
substring = text[7:13] # "Python"
# メソッド
upper_text = text.upper() # "HELLO, PYTHON!"
lower_text = text.lower() # "hello, python!"
replaced = text.replace("Python", "World")
# 分割と結合
words = text.split(", ") # ["Hello", "Python!"]
joined = ", ".join(["Hi", "there"]) # "Hi, there"
# f文字列(Python 3.6以降)
name = "Python"
version = 3.9
f_string = f"{name} {version}" # "Python 3.9"
✨ 文字列フォーマット
🔤
f文字列: Python 3.6以降の推奨方法
📝
format(): 汎用的なフォーマット
🧩
%演算子: 古い方法(非推奨)