読者です 読者をやめる 読者になる 読者になる

ソフトボールor野球の打順とポジションを自動で決めるPythonスクリプトをつくった。

Python

ソフトボール大会がそろそろあるのですが、打順とポジションが決まらなかったので、 自動で決めるためにつくりました。このスクリプトを使えば、打順とポジション決めに 悩むこともなくなります。ぜひ、使ってみてください。(選手の適性は反映していないので、お許しください。)

ソースコード のリンクです。

#!/Users/otukutun/dev/python/default33/bin/python
# -*- coding: utf-8 -*-
from os import system
import sys
import random
import time

def say(name,position,dajun):
    system('say ' + str(name) + 'のポジションは' + str(position) + 'でだじゅんわ' +  str(dajun) + 'ばんです')

def main():
    argvs = sys.argv #引数を格納したリスト
    del argvs[0]
    argc = len(argvs)
    if argc == 0:
        print('引数を指定してください。')
        sys.exit()

    test = []
    dajun = [1,2,3,4,5,6,7,8,9]
    position = ['ピッチャー','キャッチャー','いちるい','にるい','さんるい','ショート','ライト','センター','レフト']
    for i in argvs:
        position_num = random.sample(position,1)
        dajun_num = random.sample(dajun,1)
        test.append({'name' : i, 'position': position_num[0],'dajun': dajun_num[0] })
        position.remove(position_num[0])
        dajun.remove(dajun_num[0])
    for i in test:
        say(i['name'],i['position'],i['dajun'])
        print(i['name'] + 'のポジションは' + str(i['position']) + 'で、打順は' + str(i['dajun']) + 'です')
        time.sleep(0.3)

if __name__ == '__main__':
    main()
動作環境などについて
  • 対象環境はMacを想定しています。Macのバージョンは10.8.3を元に開発しました。それより前のバージョンの動作確認は行なっていません。
  • Macで読み上げ機能の日本語版kyokoを使用することを前提につくっていますので、それを事前にセットアップしてください。
  • Pythonのバージョンは3.3.2で動作確認を行なっています。それよりまえのバージョンでは動作確認を行なっていませんので、ご了承ください。