【问题标题】:python 3.2 error saying urllib.parse.urlencode() is not definedpython 3.2 错误说 urllib.parse.urlencode() 未定义
【发布时间】:2012-05-03 09:08:54
【问题描述】:

我正在尝试在我的一个脚本中使用 urllib.parse.urlencode() 方法。 导入urllib

#!/usr/bin/python3.2

import urllib

data = urllib.parse.urlencode({'type': 'device_code','client_id': 150792241632891})

它以前可以工作,但现在我收到以下错误。

输出

Traceback (most recent call last):
  File "/home/rakesh/programming/test.py", line 8, in <module>
    data = urllib.parse.urlencode({'type': 'device_code','client_id': 150792241632891})
AttributeError: 'module' object has no attribute 'parse'

最初我怀疑我的 python shell,但当我检查它使用的是 python 3.2 版本,应该是 fiine。

现在我完全困惑为什么 python shell 会这样。 我在这里遗漏了什么吗?

谢谢

【问题讨论】:

  • @larsmans 感谢您的回复。

标签: python python-3.2


【解决方案1】:

你没有在你的程序中显示导入,所以我不能确定,但​​我敢打赌你做到了

import urllib

不会导入和重新导出单独的模块urllib.parse。做

import urllib.parse

改为。

import urllib 在 Python 3.x 中相当无意义,因为所有功能都在子模块中,而顶层模块不导入这些功能。)

【讨论】:

  • 感谢您的回复。抱歉,我在复制代码时错过了导入语句。现在我已经编辑了我的问题。你的解决方案对我有用。我猜想,我从导入语句中删除了 .parse 部分,假设它将包含子模块。从早些时候我有 import urllib.parse 这就是它之前工作的原因,但是当我删除子模块时它没有工作,我很困惑。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 1970-01-01
  • 2020-08-29
  • 2020-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多