相关疑难解决方法(0)

"pip install --editable ./"vs"python setup.py develop"

两者之间是否有任何显着差异

pip install -e /path/to/mypackage
Run Code Online (Sandbox Code Playgroud)

和setuptools变种?

python /path/to/mypackage/setup.py develop
Run Code Online (Sandbox Code Playgroud)

python pip setuptools

146
推荐指数
4
解决办法
5万
查看次数

将目录添加到sys.path/PYTHONPATH

我正在尝试从特定目录导入模块.

问题是,如果我使用sys.path.append(mod_directory)附加路径然后打开python解释器,该目录mod_directory将添加到列表sys.path的末尾.如果我PYTHONPATH在打开python解释器之前导出变量,则该目录将添加到列表的开头.在后一种情况下,我可以导入模块,但在前者,我不能.

有人可以解释为什么会这样,并给我一个解决方案mod_directory, python脚本中添加到开头?

python mechanize python-import pythonpath

115
推荐指数
3
解决办法
22万
查看次数

为什么使用sys.path.append(path)而不是sys.path.insert(1,path)?

编辑:基于Ulf Rompe的注释,重要的是你使用"1"代替"0",否则你将破坏sys.path.

我已经做了很长一段时间的python(超过一年),我总是很困惑,为什么人们建议你使用sys.path.append()而不是sys.path.insert().让我来证明一下.

假设我正在开发一个名为PyWorkbooks的模块(安装在我的计算机上),但我同时处理一个包含PyWorkbooks的不同模块(比方说PyJob).当我正在使用PyJob时,我发现PyWorkbooks中的错误正在纠正,所以我想导入一个开发版本.

有两种方法可以同时工作(例如,我可以将PyWorkbooks项目放在PyJob中),但有时我仍然需要使用路径.但是,我不能简单地对sys.path.append()PyWorkbooks所在的文件夹执行操作.为什么?因为python会首先找到我安装的PyWorkbooks!

这就是你必须做一个sys.path.insert(1,path_to_dev_pyworkbooks)的原因

综上所述:

sys.path.append(path_to_dev_pyworkbooks)
import PyWorkbooks # does NOT import dev pyworkbooks, imports installed one
Run Code Online (Sandbox Code Playgroud)

要么:

sys.path.insert(1, path_to_dev_pyworkbooks) # based on comments you should use **1 not 0**
import PyWorkbooks # imports correct file
Run Code Online (Sandbox Code Playgroud)

这对我来说已经引起了一些困扰,如果我们(作为一个社区)开始推荐sys.path.insert(1, path),我真的很喜欢它,好像你是手动插入一条路径我认为可以说这是你想要的路径用!

或者我有什么不对劲?这个问题有时会困扰我,我希望它在公开场合!

python path python-import pythonpath

81
推荐指数
3
解决办法
11万
查看次数

ImportError:没有名为“ keras_contrib”的模块

我正在尝试使用下面的导入命令导入Keras lib代码以执行CRF,但是出现标题为error的错误。请为此共享解决方案。

用于执行的命令是

from keras_contrib.layers import CRF
Run Code Online (Sandbox Code Playgroud)

追溯(最近一次通话):

从keras_contrib.layers中的文件“”,第1行,导入CRF

ImportError:没有名为“ keras_contrib”的模块

python

7
推荐指数
2
解决办法
1万
查看次数

在SLES 11上为所有用户安装Python 2.7

我在先前运行Python 2.6的SLES 11盒子上安装了Python 2.7.为此,我使用了本文中描述的脚本并以root用户身份运行它.一切顺利,但一旦完成,我发现了一些问题:

  1. 没有创建符号链接且没有更新路径,因此我不得不手动更新链接到新安装bin目录的路径 /opt/python2.7/bin
  2. 一切都运行良好,直到我从root切换到普通用户,此时Python shell运行,但我安装的一些模块如PyYAML缺失.再次,当我以root身份运行Python时,这些都可以
  3. 作为普通用户,我无法运行pip,easy_install和wheel.我得到了点子ImportError: No module named pkg_resources

PS关注@user建议我尝试添加从sys.pathroot用户获取的以下路径.bashrc,但没有解决问题

export PYTHONPATH=$PYTHONPATH:/opt/python2.7/lib/python27.zip:/opt/python2.7/lib/python2.7:/opt/python2.7/lib/python2.7/plat-linux2:/opt/python2.7/lib/python2.7/lib-tk:/opt/python2.7/lib/python2.7/lib-old:/opt/python2.7/lib/python2.7/lib-dynload:/opt/python2.7/lib/python2.7/site-packages:/opt/python2.7/lib/python2.7/site-packages/PyYAML-3.11-py2.7-linux-x86_64.egg:/opt/python2.7/lib/python2.7/site-packages/pexpect-4.2.0-py2.7.egg:/opt/python2.7/lib/python2.7/site-packages/ptyprocess-0.5.1-py2.7.egg
Run Code Online (Sandbox Code Playgroud)

installation pip python-module python-2.7

6
推荐指数
1
解决办法
1041
查看次数

sys.path与$ PATH

我想从python程序中访问$ PATH变量.到目前为止我的理解是sys.path给出了Python模块的搜索路径,但我想要的是$ PATH环境变量.有没有办法从Python中访问它?

为了给出更多背景知识,我最终想要做的是找出用户安装了Package_X /的位置,这样我就可以在Package_X /中找到html文件的绝对路径.如果这是一个不好的做法,或者有更好的方法来实现这一点,我将不胜感激任何建议.谢谢!

python filesystems bash sys

5
推荐指数
2
解决办法
854
查看次数