E.g:
print "hello"
我该怎么做才能将“hello”文本加粗?
E.g:
print "hello"
我该怎么做才能将“hello”文本加粗?
当前回答
假设你指的是真正的打印终端上的“打印”:
>>> text = 'foo bar\r\noof\trab\r\n'
>>> ''.join(s if i & 1 else (s + '\b' * len(s)) * 2 + s
... for i, s in enumerate(re.split(r'(\s+)', text)))
'foo\x08\x08\x08foo\x08\x08\x08foo bar\x08\x08\x08bar\x08\x08\x08bar\r\noof\x08\
x08\x08oof\x08\x08\x08oof\trab\x08\x08\x08rab\x08\x08\x08rab\r\n'
把它发送到你的stdout。
其他回答
假设你指的是真正的打印终端上的“打印”:
>>> text = 'foo bar\r\noof\trab\r\n'
>>> ''.join(s if i & 1 else (s + '\b' * len(s)) * 2 + s
... for i, s in enumerate(re.split(r'(\s+)', text)))
'foo\x08\x08\x08foo\x08\x08\x08foo bar\x08\x08\x08bar\x08\x08\x08bar\r\noof\x08\
x08\x08oof\x08\x08\x08oof\trab\x08\x08\x08rab\x08\x08\x08rab\r\n'
把它发送到你的stdout。
粗体文本在Python中是这样的:
print("This is how the {}bold{} text looks like in Python".format('\033[1m', '\033[0m'))
这就是Python中粗体文本的样子。
有一种叫做转义序列的东西,用来表示键盘上不可用的字符。它可以用于格式化文本(在本例中为粗体字母格式),用特定的ASCII码表示特殊字符,以及表示Unicode字符。
在Python中,转义序列由反斜杠\后面跟着一个或多个字符表示。例如,转义序列\n表示换行符,转义序列\t表示制表符。
在这里使用\033[1m在你想用粗体表示的文本之前和之后格式化文本。
的例子,
print("这一行代表了\033[1mescape序列\033[0m.")
在转义序列\033[1m]中,1启用粗体文本,而m是设置文本格式的命令。\033[0m转义序列将文本格式重置为默认设置。
在\033[1m]转义序列之后使用\033[0m]转义序列来关闭粗体文本并返回默认文本格式。这是必要的,因为\033[1m转义序列只启用粗体文本,它不会禁用它。
你可以使用termcolor来表示:
sudo pip install termcolor
打印彩色粗体:
from termcolor import colored
print(colored('Hello', 'green', attrs=['bold']))
有关更多信息,请参阅PyPi上的termcolor。
Simple-colors是另一个具有类似语法的包:
from simple_colors import *
print(green('Hello', ['bold'])
在colorama中对应的可能是Style.BRIGHT。
print '\033[1m Your Name \033[0m'
\033[1m是终端中粗体的转义码。 \033[0m是结束编辑文本并返回默认文本格式的转义代码。
如果你不使用\033[0m],那么所有即将出现的终端文本都将变成粗体。