用Python print画一条龙,有眼睛,会动,彩色的,还会喷火那种

简介: 古有 div画条, console画龙。今有我 Python print 画 战龙, 一条目光凶猛,霸气红色,爱运动,能战斗的霸王龙。上面的都是产品说的,我是研发, 所以,大家懂的,从产品到设计, 从设计到实现, 每一步都是有差距的。

1.JPG


前言


古有 div画条console画龙


今有我 Python print战龙一条目光凶猛,霸气红色,爱运动,能战斗的霸王龙

上面的都是产品说的,我是研发, 所以,大家懂的,从产品到设计, 从设计到实现, 每一步都是有差距的。


预览


召唤巨龙!!!


实际的效果会明显好于GIF图的效果, 相信我,不然可以下载源码自行体验。


5.JPG


思路


像素画。


  1. 通过一些点形成轮廓
  2. 定时刷新,欺骗人类的眼睛,形成连贯动画。


设计稿


2.JPG


实现难点


请注意:

开发环境: 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)
复制代码


到此为止,输入都是白色的,输出大致是这个样子。

不行,没有颜色,缺少灵魂,霸气不足。


3.JPG


上色


这里查询到好几种方案


  1. \033方案
  2. Python库 termcolor
  3. Python在cmd上打印彩色文字


Python在cmd上打印彩色文字方法,一尝试,可用。


printGreen('printGreen:Gree Color Text')
    printRed('printRed:Red Color Text')
    printYellow('printYellow:Yellow Color Text')
复制代码

4.JPG


把代码放到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)
复制代码


红色巨龙出现:


5.JPG


写在最后


客官,你觉得可还行。



产品验收


以下纯属玩笑

你这是条龙?

我递根烟,说附近有一家好吃的日本料理, 您再看看。

产品说: 我再看看,嗯,有点像,火力也很萌。

产品说: 怎么感觉少了些啥,哦,没有手。

我说: 是条内敛的龙,你看马上下班啦。

产品说: 有创新,行,走吧。


最最后


等你来评,等你来验收。

相关文章
|
7月前
|
存储 缓存 程序员
Python程序员Debug利器,和Print说再见
Python程序员Debug利器,和Print说再见
53 2
|
7月前
|
存储 IDE 开发工具
【python原理】Python 3里面print为什么改成函数?为什么会有个奇怪的“...”对象?为什么推荐蛇形命名法?等常见问题
【python原理】Python 3里面print为什么改成函数?为什么会有个奇怪的“...”对象?为什么推荐蛇形命名法?等常见问题
92 0
|
1月前
|
存储 JSON 监控
告别Print,使用IceCream进行高效的Python调试
本文将介绍**IceCream**库,这个专门用于调试的工具显著提升了调试效率,使整个过程更加系统化和规范化。
69 2
告别Print,使用IceCream进行高效的Python调试
|
6月前
|
Python
python之print函数
python之print函数
|
2月前
|
存储 C++ Python
[oeasy]python037_ print函数参数_sep分隔符_separator
本文介绍了Python中`print`函数的`sep`参数,即分隔符。通过回顾上文内容,解释了类型与`type`的概念,并强调了参数类型的重要性。文章详细探讨了`print`函数如何使用`sep`参数来分隔输出值,默认分隔符为空格(序号32)。还讨论了如何修改分隔符为其他字符,如冒号,并解释了为何反斜杠需要使用双反斜杠表示。最后,文章追溯了`sep`名称的由来,以及相关词汇的历史背景,如盎格鲁-萨克逊人的武器和语言。
80 0
|
6月前
|
JSON 数据格式 索引
Python内置函数如`print()`输出信息,`len()`计算长度
【6月更文挑战第23天】Python内置函数如`print()`输出信息,`len()`计算长度,`type()`识别类型,`range()`生成序列,`sum()`求和,`min()`和`max()`找极值,`abs()`取绝对值,`round()`四舍五入,`sorted()`排序,`zip()`和`enumerate()`组合及遍历,`map()`和`filter()`应用函数。标准库如`os`用于操作系统交互,`sys`处理解释器信息,`math`提供数学运算,`re`支持正则表达式,`json`处理JSON数据。学习这些能提升编程效率。
68 5
|
5月前
|
SQL Java C++
Python代码示例简单的print()函数使用
Python代码示例简单的print()函数使用
|
6月前
|
Python
使用python编写彩色圆圈
使用python编写彩色圆圈
|
7月前
|
Python
Python中print()函数
4月更文挑战第3天,`print()` 是 Python 的内置函数,用于向标准输出(通常是命令行)打印信息。基本语法:`print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)`。参数包括:`objects`(必需,要打印的对象)、`sep`(默认空格,设置对象间分隔符)、`end`(默认换行,可自定义结束字符)和`file`(默认 stdout,可指定输出文件)。`flush=True` 可强制立即输出。示例展示了参数的不同用法。
96 3
Python中print()函数
|
7月前
|
程序员 C语言 Python
[oeasy]python0007_ print函数_字符串_display_电传打字机_程序员的浪漫
[oeasy]python0007_ print函数_字符串_display_电传打字机_程序员的浪漫
70 5
[oeasy]python0007_ print函数_字符串_display_电传打字机_程序员的浪漫