用Python print画一条龙,有眼睛,会动,彩色的,还会喷火那种 |Python 主题月
前言
今有我 Python print 画 战龙, 一条目光凶猛,霸气红色,爱运动,能战斗的霸王龙。
上面的都是产品说的,我是研发, 所以,大家懂的,从产品到设计, 从设计到实现, 每一步都是有差距的。
预览
召唤巨龙!!!
实际的效果会明显好于GIF图的效果, 相信我,不然可以下载源码自行体验。
思路
像素画。
- 通过一些点形成轮廓
- 定时刷新,欺骗人类的眼睛,形成连贯动画。
设计稿
实现难点
请注意:
开发环境: windows , Python3.9.1
像素点怎么生成
特殊的字, ∎
,看到没,这玩意也是字。
眼睛
还是特殊的字,⊙
, 看到没,这玩意也是字。
如果画出图形和生成动画
Python的 """
这能输出多行文本。
代码如下,就生成了栩栩如生,威风凌凌的霸王龙。
注意代码颜色为红色,输出图案并不是红色
"""
∎∎∎∎∎∎∎∎∎∎∎
∎∎ ⊙ ∎∎∎∎∎∎∎∎
∎∎∎
∎∎∎∎∎∎∎∎∎∎∎
∎ ∎∎∎∎
∎∎ ∎∎∎∎
∎∎∎ ∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎ ∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎∎∎ ∎∎∎∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎ ∎∎
∎∎ ∎∎
∎∎ ∎∎
∎ ∎
∎∎∎ ∎∎∎∎
"""
连续的生成动画,需要计时器,简单粗暴的方式:
import time
time.sleep(0.016)
如果你是连续的输出,控制台会越来越长,不会形成动画,所以我们要清空屏幕:
import os
os.system("cls")
所以,形成帧动画的简单代码形式:
import os
import time
while (True):
os.system("cls")
... other code ....
time.sleep(0.016)
到此为止,基本完成,一起看看完整的代码,一共56行:
import os
import time
def print1():
print("""
∎∎∎∎∎∎∎∎∎∎∎
∎∎ ⊙ ∎∎∎∎∎∎∎∎
∎∎∎
∎∎∎∎∎∎∎∎∎∎∎
∎ ∎∎∎∎
∎∎ ∎∎∎∎
∎∎∎ ∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎ ∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎∎∎ ∎∎∎∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎ ∎∎
∎∎ ∎∎
∎∎ ∎∎
∎ ∎
∎∎∎ ∎∎∎∎
""")
def print2():
print("""
∎∎∎∎∎∎∎∎∎∎∎
∎∎ ⊙ ∎∎∎∎∎∎∎∎
∎∎∎ ∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎
∎ ∎∎∎∎
∎∎ ∎∎∎∎
∎∎∎ ∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎ ∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎
∎∎∎∎∎ ∎∎∎∎∎∎∎∎∎∎∎∎ ∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
∎∎ ∎∎
∎∎ ∎∎
∎∎ ∎∎
∎ ∎
∎∎∎ ∎∎∎
""")
while (True):
os.system("cls")
print1()
time.sleep(0.016)
os.system("cls")
print2()
time.sleep(0.016)
到此为止,输入都是白色的,输出大致是这个样子。 不行,没有颜色,缺少灵魂,霸气不足。
上色
这里查询到好几种方案
\033
方案- Python库 termcolor
- Python在cmd上打印彩色文字
Python在cmd上打印彩色文字方法,一尝试,可用。
printGreen('printGreen:Gree Color Text')
printRed('printRed:Red Color Text')
printYellow('printYellow:Yellow Color Text')
把代码放到color.py
里面,稍微调整一下代码:
核心一句: print = color.printRed
print = color.printRed
while (True):
os.system("cls")
print1()
time.sleep(0.016)
os.system("cls")
print2()
time.sleep(0.016)
红色巨龙出现:
写在最后
客官,你觉得可还行。
产品验收
以下纯属玩笑
你这是条龙?
我递根烟,说附近有一家好吃的日本料理, 您再看看。
产品说: 我再看看,嗯,有点像,火力也很萌。
产品说: 怎么感觉少了些啥,哦,没有手。
我说: 是条内敛的龙,你看马上下班啦。
产品说: 有创新,行,走吧。
最最后
等你来评,等你来验收。
正在参加「Python主题月],您的赞评就是最大的支持。
转载自:https://juejin.cn/post/6985328075487576100