\

PythonでリストをN個のチャンクに分割する方法について説明します。以下にいくつかの方法を示します。

1. yieldキーワードを使用する

yieldキーワードを使用すると、関数は再度呼び出されたときに中断した場所から再開できます。これは通常の関数との重要な違いです。通常の関数は中断した場所から再開できません。yieldキーワードは関数が状態を覚えておくのに役立ちます。

my_list = ['geeks', 'for', 'geeks', 'like', 'geeky','nerdy', 'geek', 'love', 'questions','words', 'life']
def divide_chunks (l, n):
    for i in range(0, len(l), n):
        yield l[i:i + n]
n = 5
x = list(divide_chunks(my_list, n))
print(x)

2. ループを使用する

この例では、Pythonのループとリストのスライスを使用してリストをチャンクに分割します。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
start = 0
end = len(my_list)
step = 3
for i in range(start, end, step):
    x = i
    print(my_list[x:x+step])

3. リスト内包表記を使用する

リスト内包表記は、Pythonでリストを一行のコードで分割するエレガントな方法です。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
n = 4
final = [my_list[i * n: (i + 1) * n] for i in range((len(my_list) + n - 1) // n)]
print(final)

これらの方法を使用すると、PythonでリストをN個のチャンクに分割することができます。適切な方法を選択して、コードを最適化しましょう。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です