Python受欢迎的原因之一就是其计算生态丰富,据不完全统计,Python 目前为止有约13万+的第三方库。
本系列将会陆续整理分享一些有趣、有用的第三方库。
-
通过百度网盘获取:
链接:https://pan.baidu.com/s/1FSGLd7aI_UQlCQuovVHc_Q?pwd=mnsj
提取码:mnsj
-
前往GitHub获取:
https://github.com/returu/Python_Ecosystem
pip install pyfiglet
使用pyfiglet有以下两种方式:
-
使用pyfiglet作为命令行工具:
pyfiglet -f slant "Hello, World!"

pyfiglet --help
-
使用pyfiglet作为Python库:
from pyfiglet import Figlet
# 创建一个指定字体的Figlet对象
f = Figlet(font='slant')
# 渲染文本
print(f.renderText('Hello, World!'))
import pyfiglet
# 使用特定字体渲染文本
result = pyfiglet.figlet_format("Hello, World!", font="slant")
print(result)
-
字体:
pyfiglet
提供了多种字体(如slant,block,bubble等),可以使用下述语句来获取所有可用的字体名称。
from pyfiglet import Figlet
# 列出所有字体
fonts = Figlet().getFonts()
print(fonts)
使用时,可以通过font参数指定字体(也可以使用自定义字体文件路径创建自定义字体样式):
# 使用特定字体:
result = pyfiglet.figlet_format("Hello, World!", font="block")
print(result)
# 输出:
_| _| _| _|
_| _| _|_| _| _| _|_|
_|_|_|_| _|_|_|_| _| _| _| _|
_| _| _| _| _| _| _|
_| _| _|_|_| _| _| _|_| _|
_|
_| _| _| _| _|
_| _| _|_| _| _|_| _| _|_|_| _|
_| _| _| _| _| _|_| _| _| _| _|
_| _| _| _| _| _| _| _| _|
_| _| _|_| _| _| _|_|_| _|
-
输出宽度:
通过 width 参数来设置生成的 ASCII 艺术的宽度。
# 添加 width 参数限制行宽:
result = pyfiglet.figlet_format("Hello, World!", font="slant", width=60)
print(result)
# 输出:
__ __ ____
/ / / /__ / / /___
/ /_/ / _ / / / __
/ __ / __/ / / /_/ /
/_/ /_/___/_/_/____( )
|/
_ __ __ ____
| | / /___ _____/ /___/ / /
| | /| / / __ / ___/ / __ / /
| |/ |/ / /_/ / / / / /_/ /_/
|__/|__/____/_/ /_/__,_(_)
-
对齐方式:
通过 justify 参数调整对齐(left, center, right)。
# 通过 justify 参数调整对齐
result = pyfiglet.figlet_format("Hello, World!", width=50, justify="center")
print(result)
# 输出:
_ _ _ _
| | | | ___| | | ___
| |_| |/ _ | |/ _
| _ | __/ | | (_) |
|_| |_|___|_|_|___( )
|/
__ __ _ _ _
/ /__ _ __| | __| | |
/ / / _ | '__| |/ _` | |
V V / (_) | | | | (_| |_|
_/_/ ___/|_| |_|__,_(_)
-
结合termcolor库输出彩色艺术字:
from termcolor import colored
# 使用特定字体渲染文本
result = pyfiglet.figlet_format("Hello, World!", font="slant")
# 为输出添加颜色
colored_result = colored(result, 'red')
print(colored_result)
# 输出:
__ __ ____ _ __ __ ____
/ / / /__ / / /___ | | / /___ _____/ /___/ / /
/ /_/ / _ / / / __ | | /| / / __ / ___/ / __ / /
/ __ / __/ / / /_/ / | |/ |/ / /_/ / / / / /_/ /_/
/_/ /_/___/_/_/____( ) |__/|__/____/_/ /_/__,_(_)
|/
为艺术字添加颜色,termcolor库只是一个选择,还可以使用rich库或者直接用HTML/CSS包裹文本等一些方式完成。
# 使用 rich 库
from rich import print
# 生成 ASCII 艺术字
figlet = pyfiglet.Figlet(font='slant')
art = figlet.renderText('Hello, World!')
# 直接使用 rich 的语法添加颜色
print(f"[red]{art}[/red]")
# 纯 HTML/CSS 着色
import pyfiglet
from IPython.display import HTML
# 生成 ASCII 艺术字
figlet = pyfiglet.Figlet(font='slant')
art = figlet.renderText('Hello, World!')
# 用 HTML/CSS 包裹文本
html_art = f'<pre style="color: red; font-family: monospace">{art}</pre>'
HTML(html_art)
更多内容可以前往GitHub查看:
https://github.com/pwaller/pyfiglet


本篇文章来源于微信公众号: 码农设计师