我还有一个关于 Windows cmd 的小控制台程序的问题。
我使用 colorama 为终端中的文本着色,使其看起来像这样:
然后我发现如何为文本着色input()
-使用一点“hack”的方法,打印没有换行符,如下所示:
from colorama import init
init(autoreset=True)
YELLOW = "\x1b[1;33;40m"
print(f"\n{YELLOW}Turnier spielen? [T]: ", end='')
tournament = input()
这导致了上图中的黄线。
但我仍然在寻找一种方法来为用户输入的字符着色 - 所以在这里我想将用户输入“sdffdgf ...”格式化为颜色。
有谁能为我提供解决方案吗?还是说有限的 Windows cmd 无法实现?
删除init(autoreset=True)
您的代码中的行在我的机器上按您的意愿运行。
import colorama
from colorama import Fore,Style,Back
colorama.init()
YELLOW = "\x1b[1;33;40m"
RED = "\x1b[1;31;40m"
print(f"\n{YELLOW}Turnier spielen? [T]: ", end='')
tournament = input()
print(f"\n{RED}Turnier spielen? [T]: ", end='')
tournament2 = input()
我的色彩版本colorama==0.3.9
.
The 色彩文档 https://pypi.org/project/colorama/声明当使用autoreset=true
它将在之后立即重置您的颜色和样式选项print
命令,这发生在您进入输入命令之前,这就是为什么您没有获得用户输入文本中的颜色的原因。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)