【发布时间】:2017-03-28 17:40:34
【问题描述】:
我正在使用 Influxdb python 客户端向 Influxdb 写入数据。
但是,我无法在我的文件中导入 influxdb 模块。 它成功导入到 shell 中,但在文件中不起作用。
这里是
print '\n'.join( sys.path )
从我的外壳
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
/usr/lib/pymodules/python2.7
我的文件也是这样,
/home/azureuser/pranav/book/vogo-backend-v2/book
/home/azureuser/.virtualenvs/book/lib/python2.7
/home/azureuser/.virtualenvs/book/lib/python2.7/plat-x86_64-linux-gnu
/home/azureuser/.virtualenvs/book/lib/python2.7/lib-tk
/home/azureuser/.virtualenvs/book/lib/python2.7/lib-old
/home/azureuser/.virtualenvs/book/lib/python2.7/lib-dynload
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/home/azureuser/.virtualenvs/book/local/lib/python2.7/site-packages
/home/azureuser/.virtualenvs/book/lib/python2.7/site-packages
/home/azureuser/pranav/book/vogo-backend-v2/book
这里是
sys.executable #from file
/home/azureuser/.virtualenvs/book/bin/python
sys.executable #from the shell
/usr/bin/python
如果我在不使用 sudo pip 的情况下安装它,则会引发异常,
Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 283, in run
requirement_set.install(install_options, global_options, root=options.root_path)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1436, in install
requirement.install(install_options, global_options, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 672, in install
self.move_wheel_files(self.source_dir, root=root)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 902, in move_wheel_files
pycompile=self.pycompile,
File "/usr/lib/python2.7/dist-packages/pip/wheel.py", line 206, in move_wheel_files
clobber(source, lib_dir, True)
File "/usr/lib/python2.7/dist-packages/pip/wheel.py", line 193, in clobber
os.makedirs(destsubdir)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/distpackages/influxdb-4.0.0.dist-info'
Storing debug log for failure in /tmp/tmpokCmFo
请解释为什么会出现问题?还有解决办法。
【问题讨论】:
-
你是在访问 virtualenv 之外的 shell 吗?
-
好吧,您尝试导入的模块很可能位于您在使用 shell 时使用的路径之一中,但在您直接运行文件时却没有
-
解决方案是什么@UnholySheep
-
@AbijithMg 访问shell,我的文件在同一个地方
-
找出模块的位置,然后将其复制到路径(来自第二个输出)或在运行第二个版本时调整路径