「EP」01 如何运行Python

Greetings!

Yaho~ ふちゃんです!(> ▽ <) /~

# hello.py
print("Hello, World!")

这或许是你在学习Python时运行的第一个程序。

你还记得当时是怎么运行这个程序的吗?是点击IDERun按钮吗?还是在Terminal中输入python hello.py呢?

IDE:即Integrated Development Environment,集成开发环境。比如PyCharmVSCode等等。其一般为用户提供了代码编辑、编译、调试等功能。(也包括自动补全、错误提示、代码格式化等等)
Terminal: 终端,如WindowscmdPowerShellLinuxTerminal,等等。

为什么电脑知道要用Python而不是其他语言来运行这个程序呢?

1. 解释器:Interpreter

无论是使用IDE自带的按钮,还是在Terminal中输入命令,都是在调用Python的解释器来运行这个程序。

那么,什么是解释器呢?

vscode can't find a valid interpreter

解释器是一种将高级语言翻译成机器语言的程序。它会读取我们写的Python代码,然后将其翻译成机器语言,最后让计算机执行。

举个例子,如果我们在Windowscmd中输入python,那么我们就会根据之前在环境变量中设置的Python的路径,找到Python的解释器(python.exe),然后运行这个解释器。

那么在cmd中输入python hello.py就是说:“使用Python的解释器来运行hello.py这个文件”,也就是我们常说的**“运行hello.py这个程序”**。

再比如说,如果你在使用虚拟环境,那么每个环境的目录下都会有一个Python的解释器这也解释了为什么我们可以在不同的虚拟环境中使用不同版本的Python。(下面会有一个相关的例子)

2. 使用IDE和Terminal的区别

对于大多数IDE来说,其内部内置了一个集成终端(Integrated Terminal),在点击Run按钮时,IDE会自动在这个终端中输入相应的命令来运行程序。

而在Terminal中,我们需要手动指定想要使用的Python解释器路径。

2.1 Terminal中手动运行程序

我直接使用VscodeIntegrated Terminal来运行程序,输入python hello.py,这样会使用在系统注册的默认解释器,即/bin/python来运行程序。

vscode run

2.2 Vscode下点击按钮运行程序

以我的Linux系统为例,我在Vscode中点击Run按钮,Vscode会选择位于/bin/pythonPython解释器来运行程序。

terminal run

3. 虚拟环境:Virtual Environment

如果你在使用多个虚拟环境,那么你会在每个虚拟环境的目录下都发现一个Python的解释器。

如果使用的是Anaconda,那么可以使用以下命令来查看自己拥有的虚拟环境:

conda info --envs

conda envs

除了base环境是在Anaconda的安装目录下,其他的环境都是在Anacondaenvs目录下。

3.1 Terminal下使用虚拟环境

如果你想在Terminal中使用某个虚拟环境,那么一般需要手动切换虚拟环境。

base环境为例,我们需要先激活base环境,然后再运行程序。

conda activate base
python hello.py

terminal venv

3.2 Vscode下使用虚拟环境

Vscode中,我们可以使用手动选择解释器的方式来选择虚拟环境中的Python解释器。

在打开hello.py文件后,你可以点击右下角的按钮来选择解释器。

vscode select interpreter 0

vscode select interpreter 1

然后点击Run按钮,你会发现:Vscode并没有先激活虚拟环境(没有使用conda activate base),而是直接使用了虚拟环境中的Python解释器来运行程序

vscode select interpreter 2

换句话说,所谓的切换虚拟环境,也就是切换了Python解释器。

4. 总结

  • 无论是使用IDERun按钮,还是在Terminal中输入命令,都是在调用Python的解释器来运行程序。
  • 对于Anaconda用户来说,考虑到便捷性,还是推荐使用conda activate来切换虚拟环境。(毕竟还总需要使用pip来安装一些包)

Fin.


「EP」01 如何运行Python
https://siriusahu.github.io.git/2024/02/04/EP-01-How-to-run-Python/
Author
Sirius Ahu
Posted on
February 4, 2024
Licensed under