リストを繰り返し処理し、リストの各部分を取得してエンコードし、すべて完了したら結果を結合しようとしています。例として、各要素の長さが 16 文字のリストを生成する文字列があります。
message = (u'sixteen-letters.sixteen-letters.sixteen-letters.sixteen-letters.')
result = split16(message, 16)
msg = ';'.join(encode(result.pop(0)) for i in result)
エンコード関数は 16 バイトの文字列を受け取り、結果を返します。ただし、その書き方では、リスト内の要素の半分しかエンコードされません。
私が理解しようとすると:
result = [encode(split16(message, 16) for message in list_of_messages)]
result = ''.join(result)
リスト全体が一度に送信されます。私がする必要があるのは、各要素をエンコード関数に個別に送信し、結果を取得してからそれらを結合することです。
これを達成する簡単な方法はありますか?