見出し画像

アスキーアートを作れるpythonのライブラリで遊んでみた

久しぶりの投稿、マイキーです。

最近は、投資・転職の実体験をつづったブログを書いていて、noteをぜんぜん更新できていませんでした。

noteも大好きなのですが、Wordpressでサイトを作る経験をしたかったので、チャレンジしてます。

どっちも楽しいので、今後もゆるくどちらも更新していきます。

最近は仕事でもプライベートでも、pythonからはなれてたので、お盆休みを利用して、久しぶりに遊んでみてるわけであります。

面白そうなライブラリ:art

こんなライブラリを見つけました。

その名も「art」。

かっこええやん。

ASCII art is also known as "computer text art". It involves the smart placement of typed special characters or letters to make a visual shape that is spread over multiple lines of text.

ART is a Python lib for text converting to ASCII art fancy. ;-)

上記サイトのoverviewから転載

なんとも、アスキーアート(別名、コンピューターテキストアート)を簡単に作れるライブラリとのこと。

テキストをアスキーアートに変えてくれるみたいです。

遊んでみましょう。

アスキーアートってなに?

一応、アスキーアートって何か知らない方のために。

wikipediaによると、「プレーンテキストによる視覚的表現技法」とのこと。

ググったら、こんな感じ。

「アスキーアート 画像」

その昔、2ちゃんねるでよく見てた方も多いんじゃないでしょうか。

私は、ドンズバな世代ではありませんが、ネットでちょくちょく出くわしますよね。

色々あそんでみる

ってことで、早速あそんでみましょう。

いくつかできることあったのですが、ざっと触ってみて、面白いものをピックアップ。

Macのターミナルで実行します。

詳しいやり方は下記してます。

aprint()

この関数は、1行のartを返す、とのこと。

https://github.com/sepandhaghighi/art#overviewからスクショ
>>> aprint("smile")
:-) 

>>> aprint("butterfly")
Ƹ̵̡Ӝ̵̨̄Ʒ

>>> aprint("happy")
 ۜ\(סּںסּَ` )/ۜ 

>>> aprint("woman")
▓⚗_⚗▓ 

>>> aprint("cry")
 (╯︵╰,) 

こんな感じで、aprint("xxx")に入れたら、何らかの絵文字が返ってきます。

アスキーアート?じゃない気がするけど。

まぁ楽しい。

aprint("rand")とするすと、ランダムに色々出てくる。

>>> aprint("rand")
~~~~~~^~~~~~ 

>>> aprint("rand")
(\_/)  

>>> aprint("rand")
[: :|:::] 

>>> aprint("rand")
'==xx\0 

>>> aprint("rand")
(____((____________()~~~ 

>>> aprint("rand")
O=('-'Q) 

>>> aprint("rand")
|\_______(#*#)_______/| 

>>> aprint("rand")
d[ o_0 ]b 

なんだか、よくわからないのも出てきます。

tprint() ※こっちはおもしろい

こっちの方は、なかなか面白かった。

テキストをアスキーアートにしてくれるとのこと。

こんな感じ。

>>> tprint("python")
               _    _                   
 _ __   _   _ | |_ | |__    ___   _ __  
| '_ \ | | | || __|| '_ \  / _ \ | '_ \ 
| |_) || |_| || |_ | | | || (_) || | | |
| .__/  \__, | \__||_| |_| \___/ |_| |_|
|_|     |___/                       

>>> tprint("Data science")
 ____          _                       _                          
|  _ \   __ _ | |_   __ _   ___   ___ (_)  ___  _ __    ___   ___ 
| | | | / _` || __| / _` | / __| / __|| | / _ \| '_ \  / __| / _ \
| |_| || (_| || |_ | (_| | \__ \| (__ | ||  __/| | | || (__ |  __/
|____/  \__,_| \__| \__,_| |___/ \___||_| \___||_| |_| \___| \___|

>>> tprint("Mikey's  note")
 __  __  _  _                  _                       _         
|  \/  |(_)| | __  ___  _   _ ( ) ___    _ __    ___  | |_   ___ 
| |\/| || || |/ / / _ \| | | ||/ / __|  | '_ \  / _ \ | __| / _ \
| |  | || ||   < |  __/| |_| |   \__ \  | | | || (_) || |_ |  __/
|_|  |_||_||_|\_\ \___| \__, |   |___/  |_| |_| \___/  \__| \___|
                        |___/                                   

こんな感じで、文字をめちゃめちゃ簡単にアスキーアートに出来ました。

楽しいぜ。

フォントをいろいろ指定したら、もっと違ったこともできるみたい。

ブロックのように装飾できたり、

>>> tprint("python", font = "block")

 .----------------.  .----------------.  .----------------.  .----------------.  .----------------.  .-----------------.
| .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. |
| |   ______     | || |  ____  ____  | || |  _________   | || |  ____  ____  | || |     ____     | || | ____  _____  | |
| |  |_   __ \   | || | |_  _||_  _| | || | |  _   _  |  | || | |_   ||   _| | || |   .'    `.   | || ||_   \|_   _| | |
| |    | |__) |  | || |   \ \  / /   | || | |_/ | | \_|  | || |   | |__| |   | || |  /  .--.  \  | || |  |   \ | |   | |
| |    |  ___/   | || |    \ \/ /    | || |     | |      | || |   |  __  |   | || |  | |    | |  | || |  | |\ \| |   | |
| |   _| |_      | || |    _|  |_    | || |    _| |_     | || |  _| |  | |_  | || |  \  `--'  /  | || | _| |_\   |_  | |
| |  |_____|     | || |   |______|   | || |   |_____|    | || | |____||____| | || |   `.____.'   | || ||_____|\____| | |
| |              | || |              | || |              | || |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------' 

>>> tprint("note", font = "block")

 .-----------------. .----------------.  .----------------.  .----------------. 
| .--------------. || .--------------. || .--------------. || .--------------. |
| | ____  _____  | || |     ____     | || |  _________   | || |  _________   | |
| ||_   \|_   _| | || |   .'    `.   | || | |  _   _  |  | || | |_   ___  |  | |
| |  |   \ | |   | || |  /  .--.  \  | || | |_/ | | \_|  | || |   | |_  \_|  | |
| |  | |\ \| |   | || |  | |    | |  | || |     | |      | || |   |  _|  _   | |
| | _| |_\   |_  | || |  \  `--'  /  | || |    _| |_     | || |  _| |___/ |  | |
| ||_____|\____| | || |   `.____.'   | || |   |_____|    | || | |_________|  | |
| |              | || |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------'  '----------------' 

デジタル文字みたいにしてくれたり、

>>> tprint("python", font = "cybermedum")
___  _   _ ___ _  _ ____ _  _ 
|__]  \_/   |  |__| |  | |\ | 
|      |    |  |  | |__| | \| 
                              

>>> tprint("happy", font = "cybermedum")
_  _ ____ ___  ___  _   _ 
|__| |__| |__] |__]  \_/  
|  | |  | |    |      |   
                          

>>> tprint("Mikey's note", font = "cybermedum")
_  _ _ _  _ ____ _   _ . ____    _  _ ____ ___ ____ 
|\/| | |_/  |___  \_/  ' [__     |\ | |  |  |  |___ 
|  | | | \_ |___   |     ___]    | \| |__|  |  |___ 

イタリック調にしてくれたり、

>>> tprint("python", font = "italic")
                   
       _/  /       
 /) (/ /  /) () /) 
/   /              

>>> tprint("yes, we can.", font = "italic")
                                 
    _   _         _   _  _       
(/ (- _)  ,  ((/ (-  (  (/ /) .  
/                                

>>> tprint("yeah!!!", font = "italic")
                  
    _  _  / | | | 
(/ (- (/ /) . . . 
/                 

でかいサイズにしてくれたり、

>>> tprint("play", font = "rnd-xlarge")
                                                                       
8 888888888o   8 8888                  .8.          `8.`8888.      ,8' 
8 8888    `88. 8 8888                 .888.          `8.`8888.    ,8'  
8 8888     `88 8 8888                :88888.          `8.`8888.  ,8'   
8 8888     ,88 8 8888               . `88888.          `8.`8888.,8'    
8 8888.   ,88' 8 8888              .8. `88888.          `8.`88888'     
8 888888888P'  8 8888             .8`8. `88888.          `8. 8888      
8 8888         8 8888            .8' `8. `88888.          `8 8888      
8 8888         8 8888           .8'   `8. `88888.          8 8888      
8 8888         8 8888          .888888888. `88888.         8 8888      
8 8888         8 888888888888 .8'       `8. `88888.        8 8888      

>>> tprint("with", font = "rnd-xlarge")
          _____                    _____                _____                    _____          
         /\    \                  /\    \              /\    \                  /\    \         
        /::\____\                /::\    \            /::\    \                /::\____\        
       /:::/    /                \:::\    \           \:::\    \              /:::/    /        
      /:::/   _/___               \:::\    \           \:::\    \            /:::/    /         
     /:::/   /\    \               \:::\    \           \:::\    \          /:::/    /          
    /:::/   /::\____\               \:::\    \           \:::\    \        /:::/____/           
   /:::/   /:::/    /               /::::\    \          /::::\    \      /::::\    \           
  /:::/   /:::/   _/___    ____    /::::::\    \        /::::::\    \    /::::::\    \   _____  
 /:::/___/:::/   /\    \  /\   \  /:::/\:::\    \      /:::/\:::\    \  /:::/\:::\    \ /\    \ 
|:::|   /:::/   /::\____\/::\   \/:::/  \:::\____\    /:::/  \:::\____\/:::/  \:::\    /::\____\
|:::|__/:::/   /:::/    /\:::\  /:::/    \::/    /   /:::/    \::/    /\::/    \:::\  /:::/    /
 \:::\/:::/   /:::/    /  \:::\/:::/    / \/____/   /:::/    / \/____/  \/____/ \:::\/:::/    / 
  \::::::/   /:::/    /    \::::::/    /           /:::/    /                    \::::::/    /  
   \::::/___/:::/    /      \::::/____/           /:::/    /                      \::::/    /   
    \:::\__/:::/    /        \:::\    \           \::/    /                       /:::/    /    
     \::::::::/    /          \:::\    \           \/____/                       /:::/    /     
      \::::::/    /            \:::\    \                                       /:::/    /      
       \::::/    /              \:::\____\                                     /:::/    /       
        \::/____/                \::/    /                                     \::/    /        
         ~~                       \/____/                                       \/____/         
                                                                                              
>>> tprint("python", font = "rnd-xlarge")
                      ___       ___                           
                     (   )     (   )                          
   .-..    ___  ___   | |_      | | .-.     .--.    ___ .-.   
  /    \  (   )(   ) (   __)    | |/   \   /    \  (   )   \  
 ' .-,  ;  | |  | |   | |       |  .-. .  |  .-. ;  |  .-. .  
 | |  . |  | |  | |   | | ___   | |  | |  | |  | |  | |  | |  
 | |  | |  | '  | |   | |(   )  | |  | |  | |  | |  | |  | |  
 | |  | |  '  `-' |   | | | |   | |  | |  | |  | |  | |  | |  
 | |  ' |   `.__. |   | ' | |   | |  | |  | '  | |  | |  | |  
 | `-'  '   ___ | |   ' `-' ;   | |  | |  '  `-' /  | |  | |  
 | \__.'   (   )' |    `.__.   (___)(___)  `.__.'  (___)(___) 
 | |        ; `-' '                                           
(___)        .__.'                  

tprint("play with python", font = "rnd-large")
                                                                                                                                                                                                              
                   _/                                                                   _/      _/          _/                                                  _/          _/                                
     _/_/_/       _/        _/_/_/      _/    _/               _/      _/      _/            _/_/_/_/      _/_/_/                    _/_/_/       _/    _/   _/_/_/_/      _/_/_/        _/_/       _/_/_/    
    _/    _/     _/      _/    _/      _/    _/               _/      _/      _/      _/      _/          _/    _/                  _/    _/     _/    _/     _/          _/    _/    _/    _/     _/    _/   
   _/    _/     _/      _/    _/      _/    _/                 _/  _/  _/  _/        _/      _/          _/    _/                  _/    _/     _/    _/     _/          _/    _/    _/    _/     _/    _/    
  _/_/_/       _/        _/_/_/        _/_/_/                   _/      _/          _/        _/_/      _/    _/                  _/_/_/         _/_/_/       _/_/      _/    _/      _/_/       _/    _/     
 _/                                       _/                                                                                     _/                 _/                                                        
_/                                   _/_/                                                                                       _/             _/_/                                                           

                          

と、いろいろできました。

残念ながら、日本語には対応してなかったでした。

>>> tprint("こんにちは", font = "rnd-xlarge")

いかがでしたでしょうか?

pythonには、こんな面白ライブラリもあるってことで、遊んでみました。

楽しんでいただけたら幸いです。

遊んでみる系は、他にもこういうのもあります。

やり方

やり方はとても簡単でした。

以下、Mac向けにやり方の紹介です。

ターミナルを立ち上げる

まず、あの黒い画面(ターミナル)を立ち上げましょう。

Macのアプリ検索から呼び出しましょう。

ライブラリのインストール

pythonでartを使えるように、このライブラリをインストールします。

ここから先は

7,785字 / 2画像
この記事のみ ¥ 100

貴重なお時間で読んでいただいてありがとうございます。 感謝の気持ちで、いっPython💕