我的愿望是让每个角色或线条或任何您认为最适合ASCII的外观。基本上我已经尝试colorma
,它只基于一种颜色。所以我在这里,问你们,什么是最好的方法。我拥有的是
print("""
_____ _ _ __ _
/ ____| | | | / _| |
| (___ | |_ __ _ ___| | _______ _____ _ __| |_| | _____ __
\___ \| __/ _` |/ __| |/ / _ \ \ / / _ \ '__| _| |/ _ \ \ /\ / /
____) | || (_| | (__| < (_) \ V / __/ | | | | | (_) \ V V /
|_____/ \__\__,_|\___|_|\_\___/ \_/ \___|_| |_| |_|\___/ \_/\_/
""")
这就是它。通过这个让我知道你的想法!
答案 0 :(得分:6)
colorama提供的有效前景色是colorama.Fore
上的变量。我们可以使用vars(colorama.Fore).values()
检索它们。我们可以使用random.choice
随机选择前景色,并将vars
获得的前景色输入。{/ p>
然后我们只是为每个字符应用随机选择的颜色:
text = """
_____ _ _ __ _
/ ____| | | | / _| |
| (___ | |_ __ _ ___| | _______ _____ _ __| |_| | _____ __
\___ \| __/ _` |/ __| |/ / _ \ \ / / _ \ '__| _| |/ _ \ \ /\ / /
____) | || (_| | (__| < (_) \ V / __/ | | | | | (_) \ V V /
|_____/ \__\__,_|\___|_|\_\___/ \_/ \___|_| |_| |_|\___/ \_/\_/
"""
import colorama
import random
colors = list(vars(colorama.Fore).values())
colored_chars = [random.choice(colors) + char for char in text]
print(''.join(colored_chars))
这将打印不同颜色的每个字符:
如果你想要彩色线条,那就是一个简单的改变:
colored_lines = [random.choice(colors) + line for line in text.split('\n')]
print('\n'.join(colored_lines))
您可以根据需要定制颜色列表。例如,如果你想删除可能类似于你的终端背景(黑色,白色等)的颜色,你可以写:
bad_colors = ['BLACK', 'WHITE', 'LIGHTBLACK_EX', 'RESET']
codes = vars(colorama.Fore)
colors = [codes[color] for color in codes if color not in bad_colors]
colored_chars = [random.choice(colors) + char for char in text]
print(''.join(colored_chars))
给出了: