Pythonのforループの使い方: 基本的な使い方
- リストをループ
- インデックスと値の両方を取得(enumerate) fruits = ['apple', 'banana', 'orange']for index, fruit in enumerate(fruits): print(f"{index}: {fruit}")# 出力:# 0: apple# 1: banana# 2: orange
- 辞書をループ
キーをループdata = {'name': 'John', 'age': 30}for key in data: print(key)# キーと値をループfor key, value in data.items(): print(f"{key}: {value}")# 値だけをループfor value in data.values(): print(value)
- 範囲をループ(range)
0から9までfor i in range(10): print(i)# 5から9までfor i in range(5, 10): print(i)# 0から9まで、2ずつ増やすfor i in range(0, 10, 2): print(i) # 0, 2, 4, 6, 8
- 文字列をループ text = "Hello"for char in text: print(char)
- 複数のリストを同時にループ(zip) names = ['Alice', 'Bob', 'Charlie']ages = [25, 30, 35]for name, age in zip(names, ages): print(f"{name} is {age} years old")
- ネストしたループ matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]for row in matrix: for value in row: print(value)
- 条件付きループ(break, continue)
break: ループを中断for i in range(10): if i == 5: break print(i) # 0, 1, 2, 3, 4# continue: 次のイテレーションへfor i in range(10): if i % 2 == 0: continue print(i) # 1, 3, 5, 7, 9
- else句(ループが正常終了した場合) for i in range(5): print(i)else: print("ループが正常に終了しました")# breakで中断した場合はelseは実行されない
- リスト内包表記(forの短縮形)
通常のforループsquares = []for i in range(5): squares.append(i ** 2)# リスト内包表記squares = [i ** 2 for i in range(5)]
現在のコードへの適用例 現在のmain.pyの46行目は未完成です。以下のように修正できます:
46行目の不完全なforループを修正for name_alnum, gist_infos in classified.items(): length = len(gist_infos) if length > 1: print(f"{name_alnum}: {length}") for gist_info in gist_infos: print(f" {gist_info['title']}") # ... 他の情報も表示
または、インデックスも使う場合: for name_alnum, gist_infos in classified.items(): length = len(gist_infos) if length > 1: print(f"{name_alnum}: {length}") for index, gist_info in enumerate(gist_infos, 1): print(f" [{index}] {gist_info['title']}") 必要に応じて、より具体的な例を示します。