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 个字节
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 个字节