如何检测 Python 是 Git Bash 终端中的 运行 还是 Windows cmd?

How to detect if Python is running in Git Bash terminal, or Windows cmd?

我想让我的 Python 脚本能够检测它是否在 Git Bash 终端或 Windows cmd 命令行中执行界面。例如,我正在尝试编写一个函数来清除终端(无论它是哪个终端),例如如果在 Git Bash 中回显 clear 命令,如果在 cmd 中回显 cls

我已经尝试使用 sys.platform 来检测这一点,但它 returns win32 无论它 运行 在哪种类型的终端中。

我不相信你所要求的是可能的,但有几个答案 here 显示了你 可以 使用的所有检测正确的清除类型。通常,最好自己制作 window 或不清除屏幕,遗憾的是。

请尝试使用 ospsutil 模块。

例如,

import os, psutil  # Get the parent process name. 
pprocName = psutil.Process(os.getppid()).name()

然后你就可以根据shell.

有你的逻辑了

此外,您可能需要查看 https://www.geeksforgeeks.org/clear-screen-python/