auです。
Pythonで以下のような機能の関数を実装します。
リストの中に1000個の値が入っていて、それをn個ずつのリストに分割したい。
それを3行のコードでできたので驚きました。その報告です。
def split_list(l, n):
for i in range(0, len(l), n):
yield l[i:i + n]
list(split_list(l, 200))
こんな短いコードでできたので感動しました。
yeildを使って途中で値を返し、また実行...という風にしているようですね。
returnとは違い、関数が終了しないのですごく便利でした。