如何在 VS Code 中执行 运行 Python 脚本时隐藏文件路径?
How to hide file paths when running Python scripts in VS Code?
每次我 运行 我的代码时,底部的终端都会显示这个长名称(我认为是文件位置)以及它应该显示的任何输出。
有没有办法让它消失?
这是它的样子:
administrator@Machintosh-2 Exercise Files Python % /user/bin/python3...
Hello world!
administrator@Machintosh-2 Exercise Files Python %
AFAIK,无法隐藏路径,因为 VS Code 集成终端基本上使用的是 OS/system 的底层终端。终端上的 运行 Python 脚本需要以下形式:
<path/to/python/interpreter> <path/to/python/file>
如果你想要一个“更干净”的控制台输出,你可以创建一个 debug/launch configuration for Python, then set the console
配置到 internalConsole
:
.vscode/launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "run-my-script",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/path/to/your_script.py",
"console": "internalConsole"
}
]
}
这将在 调试控制台 选项卡而不是 终端 选项卡中显示输出。将不再有路径,只要您的脚本打印到控制台即可。
示例输出:
不幸的是,如果您的 Python 代码使用并需要用户手动 input()
,请使用 调试控制台 和 internalConsole
解决方案不会工作。它将显示此错误:
没有直接的解决方案来获得“干净”的输出并允许手动用户 input()
。您可能想考虑从文件或 passing them as command line arguments 读取程序输入。当 运行 你的脚本
时,VS Code 支持传入参数 ([args]
)
<path/to/python/interpreter> <path/to/python/file> [args]
使用 launch.json 文件中的 "args"
选项。这是一个简单的例子 sys.argv
:
python代码
import sys
# This is always path to the script
arg_0 = sys.argv[0]
# Same sequence as "args" in launch.json
arg_1 = sys.argv[1]
arg_2 = sys.argv[2]
print(arg_1)
print(arg_2)
.vscode/launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "run-my-script",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/path/to/your_script.py",
"console": "internalConsole",
"args": [
"89",
"abc"
]
}
]
}
示例输出
我 运行 遇到了同样的问题,我找到了替代解决方案。使用简单的一行启动程序后,可以清除控制台。这也将删除终端中的初始路径输出:
from os import system
system("clear")
print("Hello World")
我的 simplest/quickest 方法是将
print("3c")
在我的文件的顶部(或我希望删除 print("3c")
之上的所有内容的其他任何地方(这样我就可以消除其他打印语句可能产生的文本噪音)。
在 ASCII 编码中,八进制数 33
是 ESC(转义)字符,它是终端控制序列的通用前缀。结合 c
我们有一个旧的 VT100 reference 本质上要求终端重置为默认值,从而消除所有文本噪音所以我们只看到我们代码的输出。
每次我 运行 我的代码时,底部的终端都会显示这个长名称(我认为是文件位置)以及它应该显示的任何输出。
有没有办法让它消失?
这是它的样子:
administrator@Machintosh-2 Exercise Files Python % /user/bin/python3... Hello world! administrator@Machintosh-2 Exercise Files Python %
AFAIK,无法隐藏路径,因为 VS Code 集成终端基本上使用的是 OS/system 的底层终端。终端上的 运行 Python 脚本需要以下形式:
<path/to/python/interpreter> <path/to/python/file>
如果你想要一个“更干净”的控制台输出,你可以创建一个 debug/launch configuration for Python, then set the console
配置到 internalConsole
:
.vscode/launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "run-my-script",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/path/to/your_script.py",
"console": "internalConsole"
}
]
}
这将在 调试控制台 选项卡而不是 终端 选项卡中显示输出。将不再有路径,只要您的脚本打印到控制台即可。
示例输出:
不幸的是,如果您的 Python 代码使用并需要用户手动 input()
,请使用 调试控制台 和 internalConsole
解决方案不会工作。它将显示此错误:
没有直接的解决方案来获得“干净”的输出并允许手动用户 input()
。您可能想考虑从文件或 passing them as command line arguments 读取程序输入。当 运行 你的脚本
[args]
)
<path/to/python/interpreter> <path/to/python/file> [args]
使用 launch.json 文件中的 "args"
选项。这是一个简单的例子 sys.argv
:
python代码
import sys
# This is always path to the script
arg_0 = sys.argv[0]
# Same sequence as "args" in launch.json
arg_1 = sys.argv[1]
arg_2 = sys.argv[2]
print(arg_1)
print(arg_2)
.vscode/launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "run-my-script",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/path/to/your_script.py",
"console": "internalConsole",
"args": [
"89",
"abc"
]
}
]
}
示例输出
我 运行 遇到了同样的问题,我找到了替代解决方案。使用简单的一行启动程序后,可以清除控制台。这也将删除终端中的初始路径输出:
from os import system
system("clear")
print("Hello World")
我的 simplest/quickest 方法是将
print("3c")
在我的文件的顶部(或我希望删除 print("3c")
之上的所有内容的其他任何地方(这样我就可以消除其他打印语句可能产生的文本噪音)。
在 ASCII 编码中,八进制数 33
是 ESC(转义)字符,它是终端控制序列的通用前缀。结合 c
我们有一个旧的 VT100 reference 本质上要求终端重置为默认值,从而消除所有文本噪音所以我们只看到我们代码的输出。