首页 > 解决方案 > python在打印功能后离开线

问题描述

我正在构建一个python模块,如下所示。您可以通过编写以下代码来使用它:

from color import *

print(color('none', 'red', 'blue') + 'works?')
print(color('none', 'red', 'green') + 'works still?')

该代码使用转义码,工作方式如下:

def color(style, fore, bg):

    a = "\033[0;"
    b = "39;"
    c = "49m"

    #styles
    if style == "none":
        a = "\033[0;"

    #fore
    if fore == "none":
        b = "39;"

    #background
    if bg == "none":
        c = "48m"

#finish
    return(a + b + c)

一切正常,除了背景颜色有时会打印一条额外的线,如下所示截屏

说“仍在工作”的行应该是绿色的,而是蓝色的。

任何想法如何解决这一问题?(如果需要,我可以提供更多代码

标签: pythonpython-3.xcolorsterminalmodule

解决方案


print(color('none', 'red', 'blue') + 'works\?') 
print(color('none', 'red', 'green') + 'works still\?')

这似乎是一个转义字符问题,我很高兴它为你解决了。


推荐阅读