while 循环如何知道移动到下一个信息块?

How does while loop know to move to the next block of info?

import urllib.request, urllib.parse, urllib.error

img = urllib.request.urlopen('http://data.pr4e.org/cover3.jpg')
fhand = open('cover3.jpg', 'wb')
size = 0
while True:
    info = img.read(100000)
    if len(info) < 1: break
    size = size + len(info)
    fhand.write(info)

print(size, 'characters copied.')
fhand.close()

这个 while 循环如何知道移动到下一个 100000 字节的块?我知道在 for 循环中,循环通过数据向前移动。我对 while 循环的理解是,除非另有说明,否则它们会一遍又一遍地做同样的事情。我没有看到指示循环的位置不要一遍又一遍地读取相同的 100000 个字节。

仅供参考,这只是 Python 中第 12 章中的一个示例。

谢谢!!!

read() 函数将读取 100000 个字节并将指针移动到它的末尾。所以在下一个 read() 期间,它将从 100001 字节开始读取。因此,它不会一遍又一遍地读取相同的 100000 个字节