python - Python 调用(结构)sys.path 操作
问题描述
在更改sys.path
. 这曾经奏效。但是现在使用fabric 2.5 和python 3.7,我无法弄清楚如何在任务中保留对sys.path 的更改。我有:
fabfile.py
import sys
from fabric import task
sys.path.insert(0, 'blah')
sys.path.append('blarg')
@task
def t(con):
con.run('python3 tmp.py')
tmp.py
import sys
print(sys.path)
运行时既不blah
也不blarg
存在fab t
。阅读文档,据我了解,这是一种遗留行为,但是新可用的配置、上下文管理器和包装器并没有为我提供改变它的方法,或者至少对我来说并不是很明显。有没有办法使用织物来实现这一点,还是我需要走另一条路?
解决方案
如果您实际上不需要一个是前置而另一个是附加,则可以通过env var执行此操作:
@fabric.task
def t(con):
con.run('python3 tmp.py', env={"PYTHONPATH": "blah:blarg"})
在这种情况下,它们都将成为前置。
推荐阅读
- sql - Oracle - 如何在(在运算符中)使用字符串数据
- wordpress - 如何在 wordpress 中的特定页面模板上显示 Elementor 切换模式按钮
- f# - 澄清 F# 中的事件、观察者和邮箱处理器
- android - 发布到 google play 时管理应用版本
- symfony - Symfony 5 - 如何制作管理后端
- javascript - 是否有任何解决方案可以更改 AngularJS 中的样式值?
- android - [INSTALL_FAILED_OLDER_SDK]:需要开发平台 R 但这是一个发布平台
- c# - 从中获取文本
我正在创建一个将 ASP.NET WebForm 连接到 SQL Server 的项目。要将文本插入到 SQL Server 中的表中,我正在使用,
<asp:TextBox
但是当我单击按钮以在 TextBox 中获取文本时,该文本什么都不是。这是我的工作流程:我有 1 个页面是 Administrator.asp
- c# - 如何获取异常的上下文
- django - 'Post' 对象在 django Photo Blog App 中没有属性 'get_content_type'