热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python循环输出花式图案锁屏教程_Python仅用3行代码就能输出花式字符串图集,同事直呼666!...

高逼格的日志相信Java程序员看到上面的图,一定不会陌生。没错,springboot的启动日志。不知道其他人怎么想,我第一次看到这个启动日

高逼格的日志

相信Java程序员看到上面的图,一定不会陌生。没错,springboot的启动日志。不知道其他人怎么想,我第一次看到这个启动日志的时候,就觉得好炫酷。然而,大家在日常的Python开发中,日志打印的却枯燥无比。今天就来教大家打印出让同事羡慕,却让领导崩溃的代码输出。

字符串图集鼻祖:figlet

Linux 下有一个好玩的命令: figlet 这个命令是把一些信息用大的”字体”打印出来.

之所以说这个命令好玩,是因为它支持很多种的字符花式输出,这里截取几个示例,感兴趣的朋友可以去它的官网查看完整演示内容:http://www.figlet.org/examples.html

Python为什么为什么这么火,就是因为这货的模块太多了,所以figlet当然也逃不出Python的五指山。下面给大家来说说Python如何实现figlet的功能。

figlet的pyhton实现

万年不变的套路,yaml模块的python实现是pyyaml,所以figlet的python模块大家应该也猜到了,就是pyfiglet。 先来看看他的官网:https://pypi.org/project/pyfiglet/

因为不是什么有建树的模块,所以没什么特别的说明,其中看到这么一段:

USAGE

You can use pyfiglet in one of two ways. First, it operates on the commandline as C figlet does and supports most of the same options. Run with --help to see a full list of tweaks. Mostly you will only use -f to change the font. It defaults to standard.flf.

tools/pyfiglet 'text to render'

Pyfiglet is also a library that can be used in python code:

from pyfiglet import Figlet f = Figlet(font='slant') print f.renderText('text to render')

三行代码,就能实现字符文字的打印,是不是很简单?快下载模块试试吧。 模块下载: pip install pyfiglet

pyfiglet使用讲解

让我们先来按照示例打印看看效果:

from pyfiglet import Figlet

f=Figlet(font='slant')

print(f.renderText('Python'))

output:

____        __  __

/ __ \__  __/ /_/ /_  ____  ____

/ /_/ / / / / __/ __ \/ __ \/ __ \

/ ____/ /_/ / /_/ / / / /_/ / / / /

/_/    \__, /\__/_/ /_/\____/_/ /_/

/____/

有时候,装B就是这么不费吹灰之力。那么,它还有什么其他功能呢?让我们看看它的源码:

class Figlet(object):

"""

Main figlet class.

"""

def __init__(self, font=DEFAULT_FONT,direction='auto',

justify='auto',width=80):

...

def main():

parser=OptionParser(version=__version__,

usage='%prog [options] [text..]')

parser.add_option('-f', '--font', default=DEFAULT_FONT,

help='font to render with (default: %default)',

metavar='FONT')

parser.add_option('-D', '--direction', type='choice',

choices=('auto', 'left-to-right', 'right-to-left'),

default='auto',metavar='DIRECTION',

help='set direction text will be formatted in '

'(default: %default)')

Figlet提供了font、direction、justfity、width四个字段,刚才说这个模块的花式字体多,来看看有多少吧:

from pyfiglet import Figlet, FigletFont

print(FigletFont().getFonts())

f=Figlet(font='5lineoblique')

print(f.renderText('Breeze Python'))

output:

//   ) )

//___/ /   __      ___      ___     ___       ___

/ __  (   //  ) ) //___) ) //___) )    / /   //___) )

//    ) ) //      //       //          / /   //

//____/ / //      ((____   ((____      / /__ ((____

//   ) )

//___/ /         __  ___ / __      ___       __

/ ____ / //   / /  / /   //   ) ) //   ) ) //   ) )

//       ((___/ /  / /   //   / / //   / / //   / /

//            / /  / /   //   / / ((___/ / //   / /

这么多的字体,你挨个测试,都能玩一天...

大家看源码的时候要注意,只要是带了OptionParser、argparse类似的模块,基本都是可以在命令行直接执行的。不信你看:

其他实现与拓展

上面的实现方式,已经简单到极致了,那么还有什么更方便和好玩的?推荐大家两个网站:

bootschool不仅可以生成在线图集,还搜集了很多有趣的字符画,我们可以通过它的ascii艺术字图页签获取,比如我选择人物:

网页下面还有很多同类型的图,这个网站更能让你从天亮玩到天黑。怎么样,介绍了这么多有趣的字符图集,还不快点赞、关注支持下我。

【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0



推荐阅读
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 本文详细介绍了如何使用Linux下的mysqlshow命令来查询MySQL数据库的相关信息,包括数据库、表以及字段的详情。通过本文的学习,读者可以掌握mysqlshow命令的基本语法及其常用选项。 ... [详细]
  • 本文详细介绍了如何在PHP中使用Memcached进行数据缓存,包括服务器连接、数据操作、高级功能等。 ... [详细]
  • 使用REM和媒体查询实现响应式布局
    本文介绍如何利用REM单位和媒体查询(Media Queries)来创建适应不同屏幕尺寸的网页布局。通过具体示例,展示在不同屏幕宽度下如何调整页面元素的样式。 ... [详细]
  • 我在尝试将组合框转换为具有自动完成功能时遇到了一个问题,即页面上的列表框也被转换成了自动完成下拉框,而不是保持原有的多选列表框形式。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • 如何寻找程序员的兼职机会
    随着远程工作的兴起,越来越多的程序员开始寻找灵活的兼职工作机会。本文将介绍几个适合程序员、设计师、翻译等专业人士的在线平台,帮助他们找到合适的兼职项目。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 深入探讨前端代码优化策略
    本文深入讨论了前端开发中代码优化的关键技术,包括JavaScript、HTML和CSS的优化方法,旨在提升网页加载速度和用户体验。 ... [详细]
  • 在Qt框架中,信号与槽机制是一种独特的组件间通信方式。本文探讨了这一机制相较于传统的C风格回调函数所具有的优势,并分析了其潜在的不足之处。 ... [详细]
  • 在ElasticStack日志监控系统中,Logstash编码插件自5.0版本起进行了重大改进。插件被独立拆分为gem包,每个插件可以单独进行更新和维护,无需依赖Logstash的整体升级。这不仅提高了系统的灵活性和可维护性,还简化了插件的管理和部署过程。本文将详细介绍这些编码插件的功能、配置方法,并通过实际生产环境中的应用案例,展示其在日志处理和监控中的高效性和可靠性。 ... [详细]
author-avatar
神话海青_769
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有