标签: pythonpath

Python:每次重新启动解释器时都会撤消 sys.path 中项目的删除

>>> sys.path[6]
/path/to/django
>>> sys.path.pop(6)
/path/to/django
Run Code Online (Sandbox Code Playgroud)

然后CTRL + D

$ python

>>> sys.path[6]
/path/to/django
Run Code Online (Sandbox Code Playgroud)

哦亲爱的...

python path pythonpath python-2.7

3
推荐指数
1
解决办法
3137
查看次数

使用python路径设置shebang for python脚本

我有一个脚本,我正在尝试设置shebang,以便我执行 ./script.py而不是python script.py.当它是我脚本的最顶层时,这对我有用

#!/usr/bin/env python.这用env.

当我试图改变这个时 #/usr/local/lib/python2.7,我收到此错误消息

/usr/local/lib/python2.7: bad interpreter: Permission denied
Run Code Online (Sandbox Code Playgroud)

当我检查我的python版本时,它是

>>> import sys
>>> sys.version
'2.7.3 (default, Jun 21 2013, 13:45:37) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]'
>>> 
Run Code Online (Sandbox Code Playgroud)

和sys.path给出/usr/local/lib/python2.7/*.虽然我没有看到任何具体的内容python2.7.3.

你可以指导我如何设置使用pythonpath而不是env.

谢谢

python env shebang pythonpath

3
推荐指数
1
解决办法
3390
查看次数

PyCharm:如何使用一个项目作为另一个项目的依赖项?

在 PyCharm 中,我有一个项目可以调用另一个项目的模块。

例如,假设我们有两个项目 abc 和 xyz。在项目 abc 中,我们有一个带有函数 f1() 的模块 abc.mod_a,在项目 xyz 中,我们有一个带有函数 f2() 的模块 xyz.mod_b。

abc.mod_a.py:

import xyz.mod_b
def f1():
    xyz.mod_b.f2()
Run Code Online (Sandbox Code Playgroud)

xyz.mod_b.py:

def f2():
    print("something was done")
Run Code Online (Sandbox Code Playgroud)

我已经做了以下工作来实现这一点:

我已将 xyz 添加为项目 abc 的项目依赖项:设置->项目->项目依赖项

我已将 xyz 主目录的路径添加到用于项目 abc 的解释器的 PYTHONPATH:设置->项目->项目解释器->全部显示->解释器路径->添加路径

当我运行使用 abc.mod_a.py 的代码时,我在初始 import xyz 语句中得到一个模块未找到错误。我究竟做错了什么?

pythonpath pycharm

3
推荐指数
1
解决办法
2804
查看次数

如何在 VScode 中正确设置 PYTHONPATH env

项目结构就像

- a.py
- unittest
   - test_a.py
Run Code Online (Sandbox Code Playgroud)

py

class A():
    def function_a(self):
        return 'function_a'
Run Code Online (Sandbox Code Playgroud)

测试_a.py

from a import A

class TestA():
    def test_a(self):
        assert A().function_a() == 'function_a'
Run Code Online (Sandbox Code Playgroud)

当我使用终端 和 时set PATHONPATH=//<my-project-folder>,可以通过 检测和测试它pytest。然而,当我尝试在 VScode 中调试它时,它不断抛出No module named a.

https://code.visualstudio.com/docs/python/environments#_environment-variable-definitions-file

我已经尝试过这种方法并将其放入.env我的项目文件夹中。

.env

PYTHONPATH=C:\\Repos\\test-project
Run Code Online (Sandbox Code Playgroud)

(我在有转义和没有转义的情况下都做到了,无论如何它都不起作用。)

.vscode/setting.json

{
    "python.pythonPath": "C:\\Python27\\python.exe",
    "python.testing.pytestArgs": [
        "unittest"
    ],
    "python.testing.unittestEnabled": false,
    "python.testing.nosetestsEnabled": false,
    "python.testing.pytestEnabled": true,
    "python.envFile": "${workspaceFolder}/.env",
}
Run Code Online (Sandbox Code Playgroud)

pythonpath python-2.7 visual-studio-code

3
推荐指数
1
解决办法
9283
查看次数

Django管理命令Cron在Dotcloud上

我正在尝试运行一个cron来运行自定义Django管理命令.我在DotCloud上运行.

当cron运行时,我收到以下错误:

Traceback (most recent call last):
File "./manage.py", line 2, in <module>
from django.core.management import execute_manager
ImportError: No module named django.core.management
Run Code Online (Sandbox Code Playgroud)

我认为这是因为cron在裸环境中运行,所以我尝试在同一个cron中手动设置PYTHONPATH.这是命令......

PYTHONPATH=/home/dotcloud/env/lib/python2.6/site-packages/setuptools-0.6c11-    
py2.6.egg:/home/dotcloud/env/lib/python2.6/site-packages/pip-1.0.1-        
Run Code Online (Sandbox Code Playgroud)

py2.6.egg:/家庭/ dotcloud /电流:/home/dotcloud/env/lib/python2.6:/home/dotcloud/env/lib/python2.6/plat-linux2:/家庭/ dotcloud/ENV/LIB/python2.6的/ LIB-TK:/home/dotcloud/env/lib/python2.6/lib-old:/home/dotcloud/env/lib/python2.6/lib-dynload:/ usr/lib中/ python2 0.6:/usr/lib64/python2.6:/usr/lib/python2.6/plat-linux2:/usr/lib/python2.6/lib-tk:/usr/lib64/python2.6/lib-tk :/home/dotcloud/env/lib/python2.6/site-packages:/usr/local/lib/python2.6/dist-packages/virtualenv-1.6.1-py2.6.egg:在/ usr /本地/ LIB/python2.6的/站点包:/usr/local/lib/python2.6/dist-packages:/usr/lib/python2.6/dist-packages:/usr/lib/pymodules/python2.6

错误仍在发生,我不确定发生了什么.任何建议都非常感谢.

谢谢.

cron pythonpath django-manage.py dotcloud

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

python和bpython在Virtualenv中使用不同的PYTHONPATH

我设置的任何虚拟环境的sys.path都会发生奇怪和意外的事情.例如,一个干净的环境:

$ virtualenv test
$ source test/bin/activate
(test) $
Run Code Online (Sandbox Code Playgroud)

这是预期的PYTHONPATH:

(test) $ python
>>> import sys
>>> print '\n'.join(sys.path)

/home/user/test/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg
/home/user/test/local/lib/python2.7/site-packages/pip-1.1-py2.7.egg
/home/user/test/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg
/home/user/test/lib/python2.7/site-packages/pip-1.1-py2.7.egg
/home/user/test/lib/python2.7
/home/user/test/lib/python2.7/plat-linux2
/home/user/test/lib/python2.7/lib-tk
/home/user/test/lib/python2.7/lib-old
/home/user/test/lib/python2.7/lib-dynload
/usr/lib/python2.7
/usr/lib/python2.7/plat-linux2
/usr/lib/python2.7/lib-tk
/home/user/test/local/lib/python2.7/site-packages
/home/user/test/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)

但这是我真正得到的:

(test) $ bpython
>>> import sys
>>> print '\n'.join(sys.path)

/usr/bin
/usr/lib/python2.7
/usr/lib/python2.7/plat-linux2
/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
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚两个不同的sys.paths的原因.因此,没有pip安装工作!我正在使用Virtualenv 1.7.2,Ubuntu 12.04,Python 2.7.3.任何帮助将不胜感激.

virtualenv pythonpath

2
推荐指数
3
解决办法
2177
查看次数

在 Geany IDE 中永久附加新的 pythonpath

如何在 Geany 中添加新的 pythonpath?我在偏好设置/选项中缺少某些内容吗?我尝试将其添加到 .bashrc 中,但它不起作用。

export PYTHONPATH=/mypath
Run Code Online (Sandbox Code Playgroud)

我现在要做的就是在每个脚本的顶部添加这两行,但这并不是一个永久的解决方案:

import sys
sys.path.append('mypath')
Run Code Online (Sandbox Code Playgroud)

pythonpath geany

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

在OS Mavericks中设置/更改PYTHONPATH

好吧,我讨厌开始另外几个关于此问题的其他线程,但是如何设置或调整PYTHONPATH呢?我对Mac很新,而且我成功完成此操作的唯一一次是在Windows上使用Rapid Enviroment Editor.这看起来像一个完全不同的野兽.我尝试安装Django并且它没能为2.7做,而我需要3.4,所以当前路径必须是2.7.which python在终端中运行显示/usr/bin/python目录,然后我无法进入该目录,更不用说通过浏览找到了.我看到我的Python 3.4目录有Update Shell Profile文件,但它有很多限制.我还看到其他线程在IDLE中提到了PYTHONPATH命令,并为终端创建了一个bash配置文件类型文件.在我需要运行不同版本的Python之前,我该如何设置它并且不再担心它?我在Mac 10.9.2上."解释我就像五岁".

python macos bash path pythonpath

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

如何为多个项目设置Pycharm

我想设置Pycharm在单个窗口中处理一组python项目。

可以说我有这个项目结构。

~/src
??? py_project1
??? py_project2
??? py_project3
??? other_lang_proj1
??? other_lang_proj2
Run Code Online (Sandbox Code Playgroud)

的系统PYTHONPATH /Library/Python/2.7/site-packages:/usr/local/lib/python2.7/site-packages:/opt/proprietary/packages

还有一些套餐

/opt/proprietary/packages
??? project1
??? project2
??? project3
Run Code Online (Sandbox Code Playgroud)

如何将〜/ src / py_project *项目添加到单个Pycharm窗口中,并让它们查看PYTHONPATH和/ opt / proprietary / packages / project *中的所有软件包?移动目录不是可选的,并且我不需要virtualenv。我想为所有打开的项目配置一次Pycharm。记录下来,除了Pycharm之外,PYTHONPATH在此设置下都可以正常工作。

python pythonpath pycharm

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

防止 PyCharm 扩展 sys.path

PyCharm 执行脚本的方式与普通命令行执行的方式略有不同,这确实让我感到烦恼(哈哈) 。对于像我这样的新手来说,它使得项目和包配置变得困难。

问题:每次运行脚本时,无论是正常运行还是在 Python 控制台(运行 > 编辑配置)中,脚本文件夹和项目根目录都会自动附加到sys.path. 我希望其中之一,但不会两者兼而有之。

那么,有没有办法禁用或以其他方式配置此附加?我想在不操作每个可执行脚本开头的路径的情况下执行此操作,但如果有办法使用启动脚本或某种运行脚本,那就没问题了。

python path pythonpath pycharm

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