问答详情
源自:4-2 python正则表达式练习

求解释每一步是什么意思?不明白

i = 0
for url in listurl:
   file = open('D:/python/'+str(i)+'.jpg','w')
   req = urllib2.urlopen(url)
   buf = req.read()
   file.write(buf)
   i += 1
   time.sleep(1)


就是保存的时候吧

提问者:慕粉3754966 2016-08-23 16:46

个回答

  • 慕斯5482594
    2016-10-12 17:02:37

    第一和第七个不懂吗?

    你运行了就知道了。

    (1) 你先看一下listurl内容, print listurl
    
    
    第一个   -->  0.jpg   # 你定的名字:str(i)+'.jpg'  ,第一步i=0,初始值
    第二个   -->  1.jpg   # i += 1   ,  i自增1 ,i = 1
    以此类推,你有几个 listurl , i = len(listurl)
    如:
    len(listurl)  假设等于3
    你运行一下你的代码,应该会有0.jpg,1.jpg,2.jpg 这3张图片。
    
    如果你第七步没有的话 i += 1  ,运行一下代码,应该就0.jpg这一张图片。

  • 慕粉3754966
    2016-08-24 15:50:25

    第一和第七的i依旧不是很清楚?

  • 慕沐3684334
    2016-08-24 11:31:57

    第一步,初始化变量i=1。

    第二步,遍历URL列表中的每一个图片的URL

            第三步,打开一个文件并返回一个文件对象file,如果文件不存在,则创建文件,w是以只写的方式打开

            第四步,用urlopen()方法远程请求url的数据并返回一个文件对象req

            第五步,读取文件对象的内容,保存到变量buf

            第六步,将内容写到file里面

            第七步,i 自增,也就是通过变量自增达到文件名不能相同的目的

            第八步,调用time模块的sleep()方法,可以将程序在这一步暂停1秒钟

            第九步,关闭文件对象,老师没有写,file.close(),这句尽量要写,否则文件可能有问题,具体自己了解吧

    没了~。~