当在vscode的终端运行我的编码器时,它说我的变量是未定义的



我在VScode中写了一段简单的代码,但是当我在终端中运行它时,一个错误弹出说变量未定义。但是,当我手动按运行代码按钮时,代码运行没有任何错误。

代码:

name = input("what is your name? ")
print("hello,", name)

错误信息:

$ python hello.py
what is your name? ted
Traceback (most recent call last):
File "hello.py", line 1, in <module>
name = input("what is your name? ")
File "<string>", line 1, in <module>
NameError: name 'ted' is not defined

看起来您的机器上安装了多个python版本,并且您的计算机的默认python版本应该是python2(可能与系统环境变量相关)。您可以使用py -V检查版本。

建议使用虚拟环境,并且在每个虚拟环境中只保留一个python版本。当你选择一个解释器(Ctrl)++P——比;Python: Select Interpreter),新终端(Ctrl)++)将自动激活虚拟环境。

虚拟环境对于使用特定版本的解释器和特定包非常有用。

为了防止这种混乱,开发人员经常为项目创建虚拟环境。虚拟环境是一个包含特定解释器副本(或符号链接)的文件夹。当您安装到虚拟环境中时,您安装的任何包都只安装在该子文件夹中。当您在该环境中运行Python程序时,您就知道它只针对这些特定的包运行。

如何创建虚拟环境:

  1. 创建虚拟环境

    python -m venv <name_of_envirnment>
    
  2. 激活虚拟环境

    <name_of_envirnment>scriptsactivate
    

官方文档:Create a virtual environment

最新更新