Python - 文法 - 配列・リスト(list) - 範囲で分割

 クラウディア
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」の賢いところは、配列の添え字が、配列の個数をはみ出ていても、こけないし、実装しているものだけを処理してくれることです。
earthcar(アースカー)