- 1. 概要
- 2. 分割
1. 概要
これは、ちょっと説明がわかりにくいかもしれない。
わかりにくい説明をします。
「IndexNow」というサイトに、「URI」の更新情報を送信するのですが、1回に送信する最大は、10,000件ということになっています。
10,000件を超える場合は、「URI」の配列を、10,000件ずつの集団にわけて処理を行いたいわけです。
本ページは、下記のサイトを参考にさせていただきました。
「Python のリストを n 個ずつに分割する」
2. 分割
配列の部分配列として
list[n:m]
という書き方がありますな。
これを使うわけです。
listMine = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ]
myRange = 5
quot, remain = divmod(len(listMine), myRange)
mainloop = quot
if remain > 0:
mainloop += 1
for i in range(mainloop):
print(listMine[i*myRange:(i+1)*myRange-1])
てなソースを書いてみました。
1行目の配列を5個ずつに分割してみるです。
3~8行目は、5個ずつに分割して、割り切れる場合と割り切れない場合の処理を考慮しています。
なんか、スマートではないですが。
実際に、分割したものごとの処理が、10~11行になります。
これを実行した結果は。
[1, 2, 3, 4]
[6, 7, 8, 9]
[11]
となります。
「python」の賢いところは、配列の添え字が、配列の個数をはみ出ていても、こけないし、実装しているものだけを処理してくれることです。
|