如果文件内容中有着色代码,如何显示彩色文本

时间:2019-04-02 11:39:17

标签: python python-3.x

我在Python编程方面绝对是新手,我想问一些问题:

我有一个文本文件,并使用python读取了该内容:

with open("help/myhelp.help", "r") as f:
   for line in f:
      print(line, end='')

文件内容:

Usage: \033[00;33mcommand [options] do-sth '<param1>;<param2>   **'  \033[0m

...但是颜色没有改变。如果我复制文本行并将其放入python print()函数中,它将正常工作。

因此,在读取文件内容之后,我想显示彩色的行...

是否有可能解决这个问题?

2 个答案:

答案 0 :(得分:2)

问题是,当您读取文件时,默认情况下颜色序列不会转义。当您将其复制粘贴到Python字符串时,它起作用的原因是解释器对字符串进行了转义。

with open('help/myhelp.help', encoding='unicode_escape') as f:
    for line in f:
        print(line)

有关该主题的详细信息,请参见https://docs.python.org/3.7/reference/lexical_analysis.html#literalshttps://docs.python.org/3/library/codecs.html

答案 1 :(得分:0)

您可以使用os模块,这样您的代码就可以了

import os
os.system('color a')
with open("help/myhelp.help", "r") as f:
for line in f:
      print(line)

因此一切都完成了 您可以通过将a更改为其他字母或数字来获得所需的颜色。

This link有助于说明如何获取颜色代码。

相关问题