Python colorama打印效果不佳

时间:2015-12-29 11:38:03

标签: python colorama

我不知道这种类型的问题是如何被调用的,但现在就是这样。 我编写了一个函数,使用转义序列显示给定的列表。一切都在控制台上运行良好。但是当我将程序作为文件运行时它不起作用。

from colorama import *
import time
from blessings import Terminal
init(autoreset=False)
t=Terminal()
l1=["Such middle. Much center.","I <3 Python","Unicorn power all over the world"]

def strcenter(l):
    strc=[]
    e=int(int(int(t.height)-int(len(l)))/2)+1
    for i in range(1,e):
        strc.append("\n")
    if (e % 2 == 0):
        for p in l:
            pc=p.center(t.width," ")
            strc.append(pc+"\n")
    else:
        for p in l:
            pc=p.center(t.width," ")
            strc.append(pc+"\n")
        strc.append(" ".center(t.width," ")+"\n")
    for i in range(1,e-2):
        strc.append("\n")
    return "".join(strc)


print Style.BRIGHT+Back.WHITE+Fore.BLUE+strcenter(l1)+Style.RESET_ALL
time.sleep(5)

感谢。

1 个答案:

答案 0 :(得分:2)

作为per the docs<application>仅适用于终端,而不是在IDLE中运行时(可能是您将将程序作为文件运行时的意思)。这是设计使然,你不能让colorama在IDLE内部工作。