VSCode的Python扩展下程序运行的几种方式与环境变量管理

在VSCode中编写Python程序时,由于有些地方要使用环境变量,但是发现设置的环境变量有时不起作用,花了点时间研究了一下,过程不表,直接说结论。

首先,环境变量的设置,Python扩展中有三种方式:

  1. 直接设置系统环境变量,或在使用命令行启动VSCode时临时先设置环境变量。
    这种方式设置的环境变量在所有的运行方式下起效,但由于多个工程所用的环境变量不同,每次设置太麻烦,使用bash脚本或批处理我也觉得不爽,所以没有采用。
  2. 通过 terminal.integrated.env.windows / terminal.integrated.env.linux / terminal.integrated.env.osx 选项配置。
    选项的格式是字典,键和值都必须是字符串,具体格式:

    {
        "terminal.integrated.env.windows": {
            "ENVIRON_VARIABLE": "The Variable value",
            "VAR2": "111",
            // 下面没加引号的是错的,不会生效
            //"VAR3": 111,
        },
    }
  3. 通过配置 python.envFile 选项。
    python.envFile 是一个绝对路径,指向一个文件,默认为工程目录下的.env文件,用于定义需要的环境变量,基本格式如下:

    # 注释
    PYTHONPATH = D:\workspace\safe110\webapps
    PYTEST = 111

其次,VSCode的Python扩展有四种程序运行方式,针对不同的运行方式,起作用的环境变量分别如下:

  1. Debug
    以上三种方式设置的环境变量都会生效,VSCode会按照上面列出的顺序依次读取环境变量(即重名变量后面的生效)。
  2. pylint 等后台任务 (包括运行测试和调试测试)
    只有第1种和第3种方式设置的环境变量生效,读取顺序同上。
  3. 右键文件-->在终端运行 或 选中代码,右键-->在Python终端运行
    只有第1种和第2种方式设置的环境变量生效,读取顺序同上。
  4. 运行测试和调试测试(只分析了pytest)
    同2。

原文地址:https://www.cnblogs.com/inpool/p/setup-environ-variable-4-vscode.html

时间: 2024-10-13 16:44:09

VSCode的Python扩展下程序运行的几种方式与环境变量管理的相关文章

Linux 下三种方式设置环境变量

1.在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误. 2.那么什么是环境变量?简单说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件. 设置变量对于一般人最实用的功能就是: 不用拷贝某些dll文件到系统目录中了,而path 这一系统变量就是系统搜索dll文件的一系列路径 在Linux系统下,如果你下载并安装应用程序,很有可能在键入它的名称的时候出现

【转】Linux下软件安装的几种方式

转自Linux下软件安装的几种方式 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为              C:/Windows/, /usr/lib理解为                                       C:/Windows/System32. /usr/bin:几乎所有的系统可执行文件都会安装在这里 /usr/local/bin:则是可以存放一些系统用户自己

[Python]xlrd 读取excel 日期类型2种方式

有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法. 基本的代码结构 data = xlrd.open_workbook(EXCEL_PATH) table = data.sheet_by_index(0) lines = table.nrows cols = table.ncols print u'The total line is %s, cols is %s'%(lines, cols) 读取某个单元格: table.cell(x

返回键捕获 应用程序退出的两种方式(转)

作为应用程序一个较好的用户体验应该是:在退出应用程序前询问用户是否真正退出?目前普遍做法是,一在退出前询问是否真正退出,二是连续按两下退出. 返回键捕获 应用程序退出的两种方式 实现上述两种应用退出方式需要在onkeyDown()来进行捕获返回键 在Activity中,如果需要动态注册广播官方文档建议在onResume()进行注册,在onPause()中取消注册.注册部分代码如下: 应用程序退出方式一:确认退出对话框 public boolean onKeyDown(int keyCode, K

Ubuntu下安装软件的几种方式

Ubuntu下安装软件的几种方式  Linux软件安装由于不同的Linux分支,安装方法也互不相同,介绍几种常见的安装方法. 1. 源码安装, 对于本身具有开源血统的Linux系统来说,几乎所有的开源软件都支持在Linux平台运行,而这些软件一般都以源码打包形式分发,源码安装适用于所有Linux分支,只需要系统安装了gcc.make.以及automake和autoconf,源码安装的一般方法如下: 1. cd 源码目录 2. ./configure [opts] 3. make 4. make

Windows 下 java(JDK)的安装和环境变量的配置

1.下载JDK安装包: http://www.oracle.com/technetwork/java/javaee/downloads/index-jsp-140710.html 2.安装JDK. 3.环境变量中新建: JAVA_HOME =D:\worksoft\Java\jdk1.6.0_20; 4.环境变量中新建: CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 5.修改环境变量Path,在其后添加: %JAV

[No0000124]WPF 扩展控件Behavior的几种方式

原文:[No0000124]WPF 扩展控件Behavior的几种方式 一.使用Attached Dependency Property的方式 (1)定义Attached Dependency Property public static class DigitsOnlyBehavior { public static bool GetIsDigitOnly(DependencyObject obj) { return (bool)obj.GetValue(IsDigitOnlyProperty

python subprocess模块 监控子进程的2种方式 忙等待和立即返回同时设置子进程超时

下面的资料是关于python subprocess模块 监控子进程的2种方式 忙等待和立即返回同时设置子进程超时时间的代码. import subprocess import os import time tt = '555' cmd = "python /home/100003/python/mypython/sub2.py "+" 333"+" 444 "+tt print time.time() sub2 = subprocess.Pope

访问WEB-INF下JSP资源的几种方式(转)

访问WEB-INF下JSP资源的几种方式 方法一: 本来WEB-INF中的jsp就是无法通过地址栏访问的,所以安全. 如果说你要访问这个文件夹中的jsp文件需要在项目的web.xml文件中去配置servlet格式差不多的配置就ok了如下: <servlet> <servlet-name>runtain</servlet-name> <jsp-file>/WEB-INF/INF.jsp</jsp-file> </servlet> <