Python 如何在str.format()方法字符串中放置颜色?

Python 如何在str.format()方法字符串中放置颜色?,python,python-3.x,Python,Python 3.x,我有这个字符串: form = ''' - {sha}: {message} ~> {commit_status_change} => {result_for_commit} ''' 然后,我使用单击(或任何其他工具)为着色准备参数: params = { "sha": click.style(sha, bold=True), "message": click.style(msg, bold=True), "

我有这个字符串:

form = '''
- {sha}: {message}
~> {commit_status_change}
=> {result_for_commit}
'''
然后,我使用
单击
(或任何其他工具)为着色准备参数:

params = {
    "sha": click.style(sha, bold=True),
    "message": click.style(msg, bold=True),
    "commit_status_change": click.style(change, fg="green"),
    "result_for_commit": click.style(result, fg="green")
}
最后,我打印字符串:

print(form.format(**params))

我想使
=>
~>
符号加粗,同时保持表单整洁。如何使用python3实现此功能?

您可以使用ANSI转义序列将文本设置为粗体:

form = '''
- {sha}: {message}
\033[01m ~> \033[0m {commit_status_change}
\033[01m => \033[0m {result_for_commit}
'''

在windows上,您必须调用
os.system(“”)
以启用转义码。此外,许多终端不支持粗体,最好使用颜色稍浅的文本,或者使用下划线。

标题应在一句话中描述您的问题。“Python格式字符串中的颜色”与“我想使=>和~>符号加粗”有什么关系?这回答了你的问题吗@mousetail:我认为这不是那个问题的重复。@martineau就像那个问题一样,正确的解决方案是使用ANSI转义码或提供them@Pranav:我编辑了问题的标题,以便更好地表达问题,然而,由于可以考虑使文本粗略地改变其颜色,所以我没有改变这方面。