有没有办法在Linux和Windows shell中改变python 3.3.2中的shell打印颜色?我已经阅读了所有其他主题,但没有一个使用此版本,或者我应该导入一个模块。例如,我想用纯python模块这样打印:
。我用它们两个!我说他们都没有在python 3.3上工作: https://stackoverflow.com/questions/287871/print-in-terminal-with-colors-using-pytho n的
请不要说这是一个重复的问题,因为这些答案都没有在python 3.3.2中工作,我想使用默认模块来做那个我应该在python上安装的colorama!
答案 0 :(得分:3)
这些适用于Linux和Mac,但不适用于Windows。每当我需要为输出着色时,我都会引用它们。
第一部分展示了如何改变颜色。
# snippet found at http://stackoverflow.com/questions/287871/print-in-terminal-with-colors-using-python
class bcolors:
WARNING = '\033[95m'
ENDC = '\033[0m'
print(bcolors.WARNING + "Warning: No active frommets remain. Continue?" + bcolors.ENDC)
第二个显示每个值在您的环境中的显示方式。
for i in range(0, 128):
print("\033[%imThis is text!!\t\t( \\033[%im )\033[0m" % (i, i))
答案 1 :(得分:1)
根据https://pypi.python.org/pypi/colorama的说明,
ANSI转义字符序列长期以来一直用于在Unix和Mac上生成彩色终端文本和光标定位。 Colorama通过包装标准输出,剥离它找到的ANSI序列(在输出中显示为gobbledygook),然后将它们转换为适当的win32调用来修改终端的状态,也可以在Windows上运行。
听起来自己做这件事并不是一件非常重要的工作。
那就是说,他们也提到了这个:
另一种方法是在Windows机器上安装'ansi.sys',它为终端中运行的所有应用程序提供相同的行为。 Colorama适用于不容易的情况
如果ansi.sys
是一个选项,这些链接可能会对您有所帮助:
答案 2 :(得分:1)
要更改颜色方案,请编辑config.txt
中的[颜色]部分。但是,你不能在程序中这样做 - 即使你可能会令人厌恶的低效率。您无需安装任何新模块。您可以通过subprocess
执行此操作,这是Python附带的一个模块。
类似的东西:
from subprocess import call
call('color a', shell=True) #this sets the color to light green
print('The quick brown fox jumps over the lazy dog.')
这适用于Windows,您可以根据操作系统轻松更改调用的命令。对于您的程序,您可以将颜色放在for
循环中,并使用print
语句中的消息进行更改。
注意,这仅适用于从文件位置或命令行运行它的情况。在IDLE中运行它时不起作用。希望我帮忙!
编辑:您可以找到颜色列表here。语法为:color 'background ID''text ID'
。
这将允许您执行以下操作:
import time
from subprocess import call
for color in('a', 'e', 'c'): #cycles through different colours
call('cls', shell=True) #clears the screen
call('color ' + color, shell=True)
print('The quick brown fox jumps over the lazy dog.')
time.sleep(1)
input("\nPress enter to exit. ")
由此,您可以修改代码以使用您选择的颜色。不幸的是,绝对没有办法在屏幕上同时拥有所有颜色。为此你 DO 需要外部模块,我很害怕。
答案 3 :(得分:0)
很好地打印文本或使用python设置样式
# the ANSI codes are stored in variables, making them easier to use
black = "\033[0;30m"
red = "\033[0;31m"
green = "\033[0;32m"
yellow = "\033[0;33m"
blue = "\033[0;34m"
magenta = "\033[0;35m"
cyan = "\033[0;36m"
white = "\033[0;37m"
bright_black = "\033[0;90m"
bright_red = "\033[0;91m"
bright_green = "\033[0;92m"
bright_yellow = "\033[0;93m"
bright_blue = "\033[0;94m"
bright_magenta = "\033[0;95m"
bright_cyan = "\033[0;96m"
bright_white = "\033[0;97m"
print(black + "Hello world")
print(red + "Hello world")
print(green + "Hello world")
print(blue + "Hello world")
print(yellow + "Hello world")
print(magenta + "Hello world")
print(cyan + "Hello world")
print(bright_black + "Hello world")
print(bright_red + "Hello world")
print(bright_green + "Hello world")
print(bright_blue + "Hello world")
print(bright_cyan + "Hello world")
print(bright_magenta + "Hello world")
print(bright_yellow + "Hello world")