终端彩色时钟:实时显示彩虹渐变时间,支持 12/24 小时制切换,纯标准库,< 30 行!
🌈 彩虹时钟(terminal_clock.py)
import time, os, sys, datetime
def hsv_rgb(h, s, v):
"""HSV → RGB 0-255"""
c = v * s; x = c * (1 - abs((h * 6) % 2 - 1)); m = v - c
r, g, b = [(c + m), (x + m), (m)], [(x + m), (c + m), (m)], [(m), (c + m), (x + m)], [(m), (x + m), (c + m)], [(x + m), (m), (c + m)], [(c + m), (m), (x + m))][int(h * 6) % 6]
return int(r * 255), int(g * 255), int(b * 255)
def rainbow_clock():
while True:
now = datetime.datetime.now()
t12 = now.strftime("%I:%M:%S %p")
t24 = now.strftime("%H:%M:%S")
text = t12 if "--12" in sys.argv else t24
# 彩虹渐变:每个字符色相偏移
rainbow = "".join(f"\033[38;2;{r};{g};{b}m{c}\033[0m"
for i, c in enumerate(text)
for r, g, b in [hsv_rgb((i / len(text) + time.time() % 1), 1, 1)])
os.system('clear||cls')
print(f"\n{rainbow}\n{'按 Ctrl+C 退出':^20}")
time.sleep(0.2)
if __name__ == "__main__":
rainbow_clock()
✅ 运行方式
# 24 小时制
python terminal_clock.py
# 12 小时制
python terminal_clock.py --12
🎨 可玩改装
- 改颜色:调
hsv_rgb(h, s, v)参数 - 改形状:加边框、emoji、日期
- 改速度:
time.sleep(0.1)更快