尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
ANSI 转义码是什么?
ANSI 转义码是什么ANSI 转义码是一套文本终端控制标准通过在普通文本中插入特殊的控制字符序列让终端执行非文本操作——比如改变文字颜色、移动光标、清屏、加粗文字等。它的本质就是你打印出来的不可见指令终端看到后会执行相应动作而不是显示在屏幕上。1. 基本格式所有 ANSI 转义码都以ESC 字符开头在代码中通常用\033或\x1b表示\033[控制码m\033→ ESC 字符ASCII 码 27[→ 开始标记控制码→ 具体的数字指令多个用分号;分隔m→ 结束标记表示这是 SGR选择图形再现指令2. 常用控制码速查表文字颜色前景色控制码颜色控制码颜色30黑色90亮黑灰31红色91亮红32绿色92亮绿33黄色93亮黄34蓝色94亮蓝35品红/紫95亮品红36青色96亮青37白色97亮白背景颜色控制码颜色控制码颜色40黑色100亮黑41红色101亮红42绿色102亮绿43黄色103亮黄44蓝色104亮蓝45品红105亮品红46青色106亮青47白色107亮白样式控制控制码效果0重置所有样式恢复默认1加粗2变暗减淡3斜体部分终端支持4下划线5闪烁慢6闪烁快7反白交换前景/背景色8隐藏文字不可见9删除线3. 组合使用多个控制码可以用分号;组合在一起# 亮红色 加粗print(\033[1;91m危险\033[0m)# 黄色文字 蓝色背景print(\033[33;44m警告信息\033[0m)# 下划线 亮青色print(\033[4;96m链接文字\033[0m)4. 完整示例代码classColors:# 前景色BLACK\033[30mRED\033[31mGREEN\033[32mYELLOW\033[33mBLUE\033[34mMAGENTA\033[35mCYAN\033[36mWHITE\033[37m# 亮色BRIGHT_RED\033[91mBRIGHT_GREEN\033[92mBRIGHT_YELLOW\033[93mBRIGHT_BLUE\033[94m# 背景色BG_RED\033[41mBG_GREEN\033[42mBG_BLUE\033[44m# 样式BOLD\033[1mUNDERLINE\033[4mREVERSE\033[7m# 重置RESET\033[0m# 使用示例print(f{Colors.RED}这是红色文字{Colors.RESET})print(f{Colors.BOLD}这是加粗文字{Colors.RESET})print(f{Colors.YELLOW}{Colors.BG_BLUE}黄字蓝底{Colors.RESET})print(f{Colors.BRIGHT_GREEN}{Colors.UNDERLINE}亮绿下划线{Colors.RESET})5. 进阶256色和真彩色256色模式# \033[38;5;{颜色码}m → 前景色# \033[48;5;{颜色码}m → 背景色print(\033[38;5;196m红色\033[0m)# 196 亮红print(\033[48;5;27m蓝色背景\033[0m)# 27 蓝色RGB 真彩色24位# \033[38;2;{R};{G};{B}m → 前景色# \033[48;2;{R};{G};{B}m → 背景色print(\033[38;2;255;128;0m橙色文字\033[0m)print(\033[48;2;0;100;200m自定义蓝背景\033[0m)6. 重要注意事项⚠️ Windows 兼容性原生 Windows CMD不支持ANSI 转义码需要额外处理解决方案安装colorama库pipinstallcoloramafromcoloramaimportinit,Fore,Style init()# 初始化让Windows支持ANSIprint(Fore.BLUE蓝色文字Style.RESET_ALL)或者启用 Windows 10 的虚拟终端支持需要代码配置。 记得重置永远记得在最后加上\033[0m否则之后的打印都会沿用之前的颜色整个终端可能变色直到你手动重置7. 实用场景进度条importtimeforiinrange(101):bar█*(i//2)░*(50-i//2)print(f\r\033[92m进度:{i:3d}% [{bar}]\033[0m,end)time.sleep(0.05)print()日志分级deflog_info(msg):print(f\033[94mℹ️{msg}\033[0m)deflog_success(msg):print(f\033[92m✅{msg}\033[0m)deflog_warning(msg):print(f\033[93m⚠️{msg}\033[0m)deflog_error(msg):print(f\033[91m❌{msg}\033[0m)总结记忆把 ANSI 转义码想象成给终端的隐形指令\033[ “注意我要下指令了”数字 “具体做什么”颜色/样式/移动m “指令结束”\033[0m “回到默认状态”
RELATED

相关推荐

Web自动化测试核心:Capability参数配置详解与实战

Web自动化测试核心:Capability参数配置详解与实战

1. 项目概述:为什么Capability参数是Web自动化测试的“灵魂”? 如果你做过一段时间的Web自动化测试,特别是用Selenium WebDriver,那你肯定对 DesiredCapabilities 或者现在更常见的 Options 类不陌生。很多人刚开始写脚本时&a…

📅 2026/10/7 5:18:46
解决Firefox配置文件版本不兼容的6种方法

解决Firefox配置文件版本不兼容的6种方法

1. 问题现象与背景解析 当你在Windows或macOS系统上启动Firefox浏览器时,突然弹出一个红色警告框,显示"This profile was last used with a newer version of this application. Please create a new profile or use a different version of this a…

📅 2026/10/11 6:50:53
2026年SCI投稿降AI完整教程:免费3步把论文AI率从65%压到12%,iThenticate亲测过检

2026年SCI投稿降AI完整教程:免费3步把论文AI率从65%压到12%,iThenticate亲测过检

2026年SCI投稿降AI完整教程:免费3步把论文AI率从65%压到12%,iThenticate亲测过检 投了一篇SCI论文,iThenticate查出来AI率65%,编辑直接发邮件要求修改。我当时真的不知道从哪下手,网上找的方法要么太笼统,…

📅 2026/10/9 11:29:36
MORE NEWS

更多资讯

📰

云计算与分布式系统毕业设计选题指南

1. 云计算与分布式系统毕业设计选题指南作为一名经历过毕业设计"洗礼"的过来人,我深知选题的重要性。好的选题不仅能让你顺利通过答辩,更能成为求职时的亮点。云计算与分布式系统方向因其技术前沿性和企业需求旺盛,近年来成为计算机…

📰

Docker网络冲突排查与解决方案

1. 问题背景与现象分析最近在帮客户部署一套基于微服务的电商系统时,遇到了一个典型的Docker网络冲突问题。当时的情况是这样的:当我们尝试用docker-compose up -d启动全部服务时,日志中不断报出"端口已被占用"的错误,但…

📰

在线课程自动化脚本的风险边界与稳定实践

1. 先把话说清楚:这类脚本我不写,原因不止一个后台收到不少私信,问的都是同一件事:有没有那种挂上就能自动把在线课程的视频刷完、进度条自己往前跑的脚本。提问的人往往还会补一句,“就用一次”“反正视频我也不看”“…

📰

遗留系统接手难?用Zread从祖传代码生成可维护文档

“祖传代码”这四个字,是从业者对遗留系统最客气的称呼。上周深夜有人发消息给我,说他接手了一个五年前的项目,仓库拉下来,README 六百字,三百字在讲怎么装环境,另外三百字介绍的是一个早就被删掉的模块。他…

📰

L-Tester自动化测试平台:轻量级开源解决方案

1. 项目概述:L-Tester自动化测试平台L-Tester是一个面向现代软件开发的自动化测试开源项目,旨在为开发团队提供轻量级、可扩展的测试解决方案。不同于传统测试工具,它采用模块化架构设计,支持从单元测试到接口测试的全流程覆盖。我…

📰

Anaconda数据恢复全攻略:从误删到深度修复

1. Anaconda数据恢复全景解读作为Python生态中最主流的发行版,Anaconda的环境管理机制在带来便利的同时,也隐藏着数据丢失的风险。上周我不慎误删了base环境的关键包,导致整个数据分析项目停滞。通过这次惨痛教训,我系统梳理了从基…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬