You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

控制台应用程序中如何实现单行多颜色输出?

在控制台同一行显示多种颜色的实现方法

嘿,我懂你想在控制台同一行里混合不同颜色输出的需求——这其实是个很实用的小技巧,实现起来并不复杂!核心思路就是拆分输出内容,为每个部分单独设置颜色,而不是一次性输出整行文本。下面给你分两种常见编程语言举例说明:

C# 控制台应用实现方式

在C#里,我们可以利用Console.ForegroundColor属性来切换当前输出的文字颜色,搭配Console.Write(不换行输出)来拼接同一行的不同颜色内容:

// 设置红色,输出第一段文本
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("我是红色文字");

// 切换到蓝色,输出第二段
Console.ForegroundColor = ConsoleColor.Blue;
Console.Write(" 我是蓝色文字");

// 切换到绿色,输出第三段并换行
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine(" 我是绿色文字,这是行尾");

// 别忘了恢复默认颜色,避免后续输出都沿用最后设置的颜色
Console.ResetColor();

运行这段代码后,你就能看到同一行里三种不同颜色的文字了——因为Console.Write不会触发换行,直到调用Console.WriteLine才会结束当前行。

Python 控制台实现方式

Python里可以用ANSI转义序列直接控制颜色,或者借助colorama库来兼容Windows老版本控制台:

方法1:原生ANSI转义码

# \033[31m 代表红色前景色,\033[0m 重置为默认颜色
print("\033[31m红色文本\033[0m \033[34m蓝色文本\033[0m \033[32m绿色文本\033[0m")

方法2:使用colorama库(更友好,兼容Windows)

先安装库:pip install colorama

然后编写代码:

from colorama import init, Fore

# 初始化colorama,设置autoreset=True会自动恢复默认颜色
init(autoreset=True)

# 直接用Fore类的属性指定颜色
print(f"{Fore.RED}红色文本 {Fore.BLUE}蓝色文本 {Fore.GREEN}绿色文本")

核心原理总结

不管用哪种语言,实现同一行多颜色输出的本质都是:

  • 把需要不同颜色的内容拆分成独立片段
  • 为每个片段单独设置颜色(或用颜色标记包裹)
  • 依次输出这些片段,确保它们在同一行显示

这样就能轻松实现你想要的多颜色控制台输出效果啦!

内容的提问来源于stack exchange,提问作者BadAss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:14:41