嗨今天我已经encounterd一些Python魔术我不明白,这是蟒蛇进口下划线模块
我有我在哪里使用CSV模块像
import csv
脚本,它抛出
$> python generate_xml.py
generate_xml.py:21: SyntaxWarning: name 'parser' is assigned to before global declaration
global parser
Traceback (most recent call last):
File "generate_xml.py", line 2, in <module>
import csv
File "/usr/local/python2.5.1/lib/python2.5/csv.py", line 7, in <module>
from _csv import Error, __version__, writer, reader, register_dialect, \
ImportError: No module named _csv
所以我检查了csv.py文件,我看到的是这个
from _csv import Error, __version__, writer, reader, register_dialect, \
unregister_dialect, get_dialect, list_dialects, \
field_size_limit, \
QUOTE_MINIMAL, QUOTE_ALL, QUOTE_NONNUMERIC, QUOTE_NONE, \
__doc__
from _csv import Dialect as _Dialect
,所以我已经运行python控制台,并重新输入它像
>>> _csv
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name '_csv' is not defined
>>> from _csv import Error
>>>
我的问题是,这是什么? _(下划线)在导入语句中做了什么?为什么它不能找到_csv模块
编辑 更新回溯 这个版本被安装为系统上的第二,不是我
为我做了一些谷歌搜索看起来像_is只是一个约定,并应具有不任何含义,将检查模块搜索路径
这是您的系统Python,还是您自己安装/构建它? – snakecharmerb
你可以显示更多的代码,并完成回溯? –
更新了其他信息 – WKordos