【Python】for文でのテキスト出力
目次
- Pythonのfor文とは
- 基本的なfor文の使い方
- 文字列の出力
- range() を使ったループ
- リストを使った繰り返し
- 辞書を使った繰り返し
- 入れ子のfor文
- ファイルへの書き出し
- 出力のフォーマット
- 応用例
Pythonのfor文とは
Pythonの for
文は、繰り返し処理(ループ)を行うための制御構文です。リストやタプル、辞書、文字列などのイテラブルなオブジェクトを順番に取り出し、処理を実行できます。
基本的なfor文の使い方
基本的な構文は以下の通りです。
for 変数 in イテラブルオブジェクト:
処理
例えば、リストの各要素を出力する場合:
fruits = ["りんご", "みかん", "バナナ"]
for fruit in fruits:
print(fruit)
実行結果:
りんご みかん バナナ
文字列の出力
文字列はイテラブルなオブジェクトなので、1文字ずつ出力することができます。
text = "Python"
for char in text:
print(char)
実行結果:
P y t h o n
range() を使ったループ
range()
関数を使うと、指定した回数だけ繰り返すことができます。
for i in range(5):
print(f"ループ{i + 1}回目")
実行結果:
ループ1回目 ループ2回目 ループ3回目 ループ4回目 ループ5回目
リストを使った繰り返し
リストの各要素を順番に処理することができます。
numbers = [10, 20, 30, 40, 50]
for num in numbers:
print(f"数値: {num}")
実行結果:
数値: 10 数値: 20 数値: 30 数値: 40 数値: 50
辞書を使った繰り返し
辞書の場合は、キーと値を取得できます。
person = {"名前": "太郎", "年齢": 25, "職業": "エンジニア"}
for key, value in person.items():
print(f"{key}: {value}")
実行結果:
名前: 太郎 年齢: 25 職業: エンジニア
入れ子のfor文
for文を入れ子にすると、2次元のデータを扱うことができます。
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for num in row:
print(num, end=" ")
print()
実行結果:
1 2 3 4 5 6 7 8 9
ファイルへの書き出し
for文を使って、テキストファイルにデータを書き出すこともできます。
lines = ["こんにちは", "Pythonを学ぼう", "for文を使いこなそう"]
with open("output.txt", "w", encoding="utf-8") as f:
for line in lines:
f.write(line + "\n")
これを実行すると、output.txt
に3行のテキストが書き込まれます。
出力のフォーマット
f-string
を使うと、出力を見やすく整形できます。
for i in range(1, 6):
print(f"値: {i:02d}")
実行結果:
値: 01 値: 02 値: 03 値: 04 値: 05
応用例
例えば、九九の表を作る場合:
for i in range(1, 10):
for j in range(1, 10):
print(f"{i*j:2d}", end=" ")
print()
実行結果:
1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81
このように、for文を使えば様々なテキスト出力が可能になります。