江湖散人 发表于 2021-3-28 22:00:29

模块调用问题

import urllib.request
response = urllib.request.urlopen("https://placekitten.com/200/300")
cat_ing = response.read()
with open('cat.jpg','wb') as f:
    f.write(cat_ing)


这句 import urllib.request   中的调用为什么不能直接写“ import urllib”,在下一句中已经写了调用了request了呀,为什么还得再写一次?

z5560636 发表于 2021-3-29 08:34:04

import urllib.request as ccd
response = ccd.urlopen("https://placekitten.com/200/300")

这样把导入的库取个别名以后,看上去会更好理解吧?


qq1151985918 发表于 2021-3-29 08:50:29

urllib.request 和 urllib是两个模块,是将 request 整合到了 urllib
看起来像是 urllib 的一个方法,其实就是两个模块

suchocolate 发表于 2021-3-29 08:50:42

本帖最后由 suchocolate 于 2021-3-29 09:01 编辑

1)import xxx 方式:导入一个模块,相当于导入一个文件夹,每次使用模块中的函数都要指定。
2)from xxx import xxx 方式:导入一个模块中的一个函数,每次使用模块中的函数,直接使用函数就可以了。
from urllib import request

response = request.urlopen("https://placekitten.com/200/300")
# xxxxxxx
注意:导入的子函数也可能是文件夹,下面还有子函数(文件)。

江湖散人 发表于 2021-3-29 09:55:16

suchocolate 发表于 2021-3-29 08:50
1)import xxx 方式:导入一个模块,相当于导入一个文件夹,每次使用模块中的函数都要指定。
2)from xxx...

谢谢啊,这样确实号理解多了
页: [1]
查看完整版本: 模块调用问题