【发布时间】:2017-05-20 23:26:02
【问题描述】:
python 3.5.2
代码 1
import urllib
s = urllib.parse.quote('"')
print(s)
它给出了这个错误:
AttributeError: 模块 'urllib' 没有属性 'parse'
代码 2
from urllib.parse import quote
# import urllib
# s = urllib.parse.quote('"')
s = quote('"')
print(s)
它有效...
code3
from flask import Flask
# from urllib.parse import quote
# s = quote('"')
import urllib
s = urllib.parse.quote('"')
print(s)
它也有效。因为烧瓶?
为什么我没有错误了?是bug吗?
【问题讨论】:
-
您必须
import urllib.parse。我会假设Flask也导入urllib.parse,这就是您的第三个示例有效的原因。 -
由于某种原因,这在 IPython 中工作得很好,但在 Python 脚本中失败。
$ ipython Python 3.7.1 (default, Dec 13 2018, 11:43:05) Type 'copyright', 'credits' or 'license' for more information IPython 7.2.0 -- An enhanced Interactive Python. Type '?' for help. In [1]: import urllib In [2]: urllib.parse.quote('foo bar') Out[2]: 'foo%20bar'。我不确定为什么它在那里工作。
标签: python urllib python-3.5