Kevin's Data Analytics Blog

データサイエンティスト、AIエンジニアを目指す方に向けて情報発信していきます。

Pythonでコイントスをするアプリを作ってみた|Pyinstaller

Pythonコイントスをするアプリを作ってみましたので、画像イメージとソースコードをこちらに残します。

画面イメージ

f:id:dskevin:20210929215023p:plain
f:id:dskevin:20210929215044p:plain
f:id:dskevin:20210929215058p:plain

ソースコード

cointoss.py

#!/usr/bin/env python
# coding: utf-8

import os
import sys
import time
import random

title='''
                            ■        
         ■                  ■          
                            ■          
    ■■■■ ■ ■■■■  ■■  ■ ■■■  ■  ■■■■    
    ■    ■ ■■  ■■  ■ ■■  ■■ ■ ■■  ■    
    ■    ■ ■   ■   ■ ■    ■ ■ ■   ■■   
     ■■  ■ ■   ■   ■ ■    ■ ■ ■■■■■■   
       ■ ■ ■   ■   ■ ■    ■ ■ ■        
    ■  ■ ■ ■   ■   ■ ■■  ■■ ■ ■■       
    ■■■■ ■ ■   ■   ■ ■■■■■  ■  ■■■■    
                     ■                 
                     ■                 
                     ■                 
                                           
             ■                             
                       ■                   
 ■■■■  ■■■■  ■ ■ ■■■  ■■■■  ■■■■  ■■■■ ■■■■
■■  ■ ■■  ■■ ■ ■■  ■■  ■   ■■  ■■ ■    ■   
■     ■    ■ ■ ■    ■  ■   ■    ■ ■    ■   
■     ■    ■ ■ ■    ■  ■   ■    ■  ■■   ■■ 
■     ■    ■ ■ ■    ■  ■   ■    ■    ■    ■
■■  ■ ■■  ■■ ■ ■    ■  ■■  ■■  ■■ ■  ■ ■  ■
 ■■■■  ■■■■  ■ ■    ■   ■■  ■■■■  ■■■■ ■■■■
                                           
'''


omote='''
      ■■■■■■■■■■■■■■■
    ■■■             ■■■
   ■■                 ■■
  ■■        ■■         ■■
  ■         ■■          ■
 ■   ■■■■■■■■■■■■■■■■    ■
 ■          ■■           ■
 ■    ■■■■■■■■■■■■■■     ■
 ■          ■■           ■
 ■          ■■           ■
 ■  ■■■■■■■■■■■■■■■■■■   ■
 ■         ■■■■          ■
 ■       ■■■  ■   ■■     ■
 ■      ■■    ■■ ■■      ■
 ■   ■■■■■     ■■■       ■
 ■  ■■■  ■      ■■       ■
 ■       ■    ■  ■■      ■
 ■       ■■■■■■   ■■■    ■
 ■    ■■■■■■       ■■■   ■
  ■    ■             ■■ ■
  ■■                   ■■
   ■■                 ■■ 
    ■■■             ■■■
      ■■■■■■■■■■■■■■■
'''

ura='''
      ■■■■■■■■■■■■■■■     
    ■■■■■■■■■■■■■■■■■■■   
   ■■■■■■■■■ ■■■■■■■■■■■
  ■■■■■■■■■■  ■■■■■■■■■■■
  ■■                  ■■■
 ■■■■■■■■■■■■■■■■■■■■■■■■■
 ■■■■■              ■■■■■■
 ■■■■■  ■■■■  ■■■■  ■■■■■■
 ■■■■■              ■■■■■■
 ■■■■■  ■■■■  ■■■■  ■■■■■■
 ■■■■■              ■■■■■■
 ■■■■■■■■■■■  ■■■■■■■■■■■■
 ■■■■                ■■■■■
 ■■■■■■■■■■■  ■■■■■■■■■■■■
 ■■■                  ■■■■
 ■■■■■■■■■  ■  ■■■  ■■■■■■
 ■■■■■■■   ■■■  ■   ■■■■■■
 ■■■      ■■■■■   ■■■■■■■■
 ■■■ ■■■■ ■■   ■   ■■■■■■■
  ■■■■■      ■■■■■    ■■■
  ■■■■■ ■■■■■■■■■■■■■■■■■
   ■■■■■■■■■■■■■■■■■■■■■ 
    ■■■■■■■■■■■■■■■■■■■
      ■■■■■■■■■■■■■■■
'''

def toss():
    for i in range(4):
        # print("コイントス中:")
        print(" ")
        print(omote)
        time.sleep(0.1)
        os.system('cls')
        print(" ")
        print(ura)
        time.sleep(0.1)
        os.system('cls')

def main():
    counter_total = 0
    counter_omote = 0
    counter_ura = 0
    while(1):
        print(title)
        print('')
        print('Enterキーを押してコイントスを開始します。終了するときは、"q"キーを押します')
        x = input()
        os.system('cls')
        if x == 'q':
            break
        else:
            toss()
            counter_total += 1
            result = random.randint(0, 1)
            if result == 0:
                counter_omote += 1
                print("結果:")
                print(omote)
            else:
                counter_ura += 1
                print("結果:")
                print(ura)
        print('実施回数:'+str(counter_total) + '  表:'+str(counter_omote) + '  裏:'+str(counter_ura))
        x = input()
        os.system('cls')

if __name__ == '__main__':
    main()
    sys.exit(0)

注意:文字をアスキーアート風に描いています。ブログ画面の表示上ズレていますが、テキストエディタにコピペすれば、以下の様にきれいに見えると思います。

f:id:dskevin:20210929222026p:plain

実行方法

Pythonがインストール済の環境であれば、コマンドプロンプトなどの実行環境から以下のように実行できます。

python cointoss.py

exeファイルへの変換方法

Pythonプログラムをexeファイル化することで、Pythonをインストールしていない環境でも、アイコンをクリックするだけで簡単にPythonプログラムを実行できるようになります。
f:id:dskevin:20210929222314p:plain

exeファイル化する際には、Pyinstallerを使用します。やり方は以下の動画で公開していますので、よければこちらをご確認ください。
youtu.be

また、Pyinstallerで作成したexeファイルのエラー発生時の対処方法について、別記事に公開していますので、こちらも必要に応じてご確認ください。
dskevin.hatenablog.com

まとめ

コイントスをするPythonプログラムのソースコードを公開しました。
本記事が、Pythonを使ったプログラミングを学習する際の参考になれば幸いです。
最後まで読んでいただき、ありがとうございました。