E.g:
print "hello"
我该怎么做才能将“hello”文本加粗?
E.g:
print "hello"
我该怎么做才能将“hello”文本加粗?
当前回答
粗体文本在Python中是这样的:
print("This is how the {}bold{} text looks like in Python".format('\033[1m', '\033[0m'))
这就是Python中粗体文本的样子。
其他回答
假设你指的是真正的打印终端上的“打印”:
>>> 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中有一个非常有用的模块用于格式化文本(粗体、下划线、颜色等)。它使用curses库,但是使用起来非常简单。
一个例子:
from terminal import render
print render('%(BG_YELLOW)s%(RED)s%(BOLD)sHey this is a test%(NORMAL)s')
print render('%(BG_GREEN)s%(RED)s%(UNDERLINE)sAnother test%(NORMAL)s')
我写了一个名为colors.py的简单模块,让它更python化一些:
import colors
with colors.pretty_output(colors.BOLD, colors.FG_RED) as out:
out.write("This is a bold red text")
with colors.pretty_output(colors.BG_GREEN) as out:
out.write("This output have a green background but you " +
colors.BOLD + colors.FG_RED + "can" + colors.END + " mix styles")
def say(text: str):
print ("\033[1;37m" + text)
say("Hello, world!")
我的代码工作正常。
看看Colorama。它不一定对加粗有帮助……但是你可以在Windows和Linux上进行彩色输出,并控制亮度:
from colorama import *
init(autoreset=True)
print Fore.RED + 'some red text'
print Style.BRIGHT + Fore.RED + 'some bright red text'
print '\033[1m Your Name \033[0m'
\033[1m是终端中粗体的转义码。 \033[0m是结束编辑文本并返回默认文本格式的转义代码。
如果你不使用\033[0m],那么所有即将出现的终端文本都将变成粗体。