我正在尝试使用python中的bdecode库解码bencode格式。我已经在我的python文件夹中导入了bcode库。当我尝试使用库中定义的函数bdecode时。我收到错误
File "C:\Python27\fit.py", line 21, in <module>
decoded = bdecode(data)
NameError: name 'bdecode' is not defined
任何想法为什么会发生这种错误,我只是对python的新手?如果这是因为bcode库,是否有人可以提交链接到其他一些bcode库?
这是我正在尝试的代码
import bcode, urllib, urlparse, string
url = "http://update.utorrent.com/installoffer.php?"
url = url + "offer=conduit"
filename = "out_py.txt"
urllib.urlretrieve(url,filename)
with open ("out_py.txt", "r") as myfile:
data=myfile.readlines()
decoded = bdecode(data)
答案 0 :(得分:1)
您可以通过以下两种方式之一解决,更改您的导入语句:
from bcode import bdecode
import urllib, urlparse, string
或更改您调用该函数的行:
decoded = bcode.bdecode(data)
问题在于,在导入bcode模块时,您没有将其中的任何符号导入到本地名称空间。