【Python】pyfigletを使って独自フォントのASCIIアートを表示する方法
この記事では、Pythonを使ってテキストをユニークでおしゃれなスタイルで表示する方法を紹介します。
同じ「Hello, Python」という文字列でも、フォントのスタイルを変えるだけで印象はまったく変わります。ターミナルの出力やCLIツールのバナーを華やかにしたいときに、ぜひ活用してみてください。
pyfigletとは
pyfigletは、通常の文字列をASCIIアート風のフォントに変換してくれるPythonライブラリです。数百種類のフォントが内蔵されており、数行のコードで個性的なテキスト表示を実現できます。
インストールはターミナルで次のコマンドを実行するだけです。
$ pip install pyfiglet
使用例1:標準フォントで出力する
もっとも基本的な使い方は、figlet_format() 関数に文字列を渡す方法です。
>>> import pyfiglet
>>> ascii_banner = pyfiglet.figlet_format('HELLO, PYTHON')
>>> print(ascii_banner)
_ _ _____ _ _ ___ ______ _______ _ _ ___ _ _
| | | | ____| | | | / _ \ | _ \ \ / /_ _| | | |/ _ \| \ | |
| |_| | _| | | | | | | | | | |_) \ V / | | | |_| | | | | \| |
| _ | |___| |___| |__| |_| | | __/ | | | | | _ | |_| | |\ |
|_| |_|_____|_____|_____\___( ) |_| |_| |_| |_| |_|\___/|_| \_|
|/使用例2:graffitiフォント
Figletクラスを使うと、フォントを明示的に指定できます。font='graffiti' を指定すると、手書きのグラフィティのような迫力あるASCIIアートが出力されます。
>>> from pyfiglet import Figlet
>>> custom_fig = Figlet(font='graffiti')
>>> print(custom_fig.renderText('HELLO, PYTHON'))使用例3:bubbleフォント
font='bubble' を指定すると、各文字が枠で囲まれたポップなスタイルで表示されます。
>>> custom_fig = Figlet(font='bubble')
>>> print(custom_fig.renderText('Hello, Python'))
_ _ _ _ _ _ _ _ _ _ _ _
/ \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \
( H | e | l | l | o | , ) ( P | y | t | h | o | n )
\_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/使用例4:speedフォント
font='speed' を指定すると、スピード感のある斜体スタイルのASCIIアートが出力されます。英数字のみのシンプルなデザインなので、ログ出力の見出しなどにも向いています。
>>> custom_fig = Figlet(font='speed')
>>> print(custom_fig.renderText('Hello, Python'))利用できるフォントの一覧を確認する
pyfigletには非常に多くのフォントが用意されています。どんなフォントが使えるのか知りたい場合は、次のコードで一覧を取得できます。
>>> import pyfiglet >>> fonts = pyfiglet.FigletFont.getFonts() >>> print(len(fonts)) # フォントの総数を確認 >>> print(fonts[:10]) # 先頭10件だけ表示
あとは気に入ったフォント名を Figlet(font='フォント名') に渡すだけで、好きなスタイルのASCIIアートバナーを生成できます。アプリケーションの起動画面やスクリプトの出力をワンランク上の見栄えにしたい方は、ぜひ試してみてください。
-
PythonでPOSTメソッドを使ってCGIプログラムに情報を渡す方法
CGIプログラムへ情報を渡す方法としては、POSTメソッドの方が一般的により信頼性が高いとされています。POSTメソッドは、GETメソッドとまったく同じ形式でデータをパッケージ化しますが、URLの「?」以降にテキスト文字列として付加して送信するのではなく、独立したメッセージとして送り出す点が異なります。このメッセージは、標準入力(stdin)を通じてCGIスクリプトへ渡されます。POSTメソッドの主な特徴送信データがURLに表示されないため、GETメソッドよりも安全性が高いURLの長さ制限を受けないため、大量のデータも送信できるデータはリクエストボディに格納され、標準入力経由でCGIスクリプト
-
PythonでGmailから添付ファイル付きメールを送信する方法【smtplib活用】
はじめに この記事では、Pythonを使って添付ファイル付きのメールを送信する方法を解説します。メール送信には外部ライブラリは不要で、Pythonに標準搭載されている「smtplib」モジュールを使用します。smtplibは、SMTP(Simple Mail Transfer Protocol)を利用してメールを送信するためのモジュールで、SMTPクライアントセッションオブジェクトを生成して送信処理を行います。 SMTPを利用するには、有効な送信元・宛先のメールアドレスとポート番号が必要です。ポート番号はサービスによって異なり、たとえばGoogle(Gmail)の場合は587番を使用します。