如何在Python IDLE(v3.10.5,Windows10)中实现打印文本加粗?
在Windows 10的Python IDLE 3.10.5中实现打印文本加粗
Python IDLE的默认交互式Shell不支持常规终端的ANSI转义序列,需分两种场景处理:
场景1:在IDLE的Shell窗口中实现加粗打印
IDLE基于tkinter开发,可通过其内置的write函数应用文本样式。代码示例:
from idlelib.run import write total_price = 15.0 # 示例价格 subtotal = total_price * 1.20 # 用\x01\x1b[1m\x02标记加粗文本,\x01\x1b[0m\x02重置样式 write("\x01\x1b[1m\x02The price for your custom pizza is £\x01\x1b[0m\x02", total_price)
原理:\x1b[1m是ANSI加粗指令,\x01和\x02是IDLE识别的标记,用于将样式指令传递给底层tkinter文本组件。
场景2:在系统终端(CMD/PowerShell)中运行脚本时加粗
若代码在IDLE编写但最终在系统终端执行,可使用ANSI转义码:
import os os.system("") # 启用CMD的ANSI支持(PowerShell可省略) total_price = 15.0 subtotal = total_price * 1.20 # 使用f-string格式化并添加加粗样式 print(f"\033[1mThe price for your custom pizza is £{total_price:.2f}\033[0m")
\033[1m开启加粗,\033[0m恢复默认样式,.2f用于将价格格式化为两位小数,提升可读性。
注意:直接在IDLE的Shell中运行这段终端兼容代码,ANSI指令会显示为乱码,请根据运行环境选择对应方法。
内容的提问来源于stack exchange,提问作者Sam F
相关产品推荐
相关产品推荐

