【Python】競馬を当てるランダムプログラム

Pythonを使って、競馬をランダムに予想するプログラムを作ってみます。

予想すると言っても、数字をランダムに返すだけのプログラムですので、宝くじ感覚です。

競馬の賭け方は複数あり、1着を当てる単勝や、上位2着を当てる馬連、上位3着を当てる3連複などたくさんの賭け方があります。

今回のプログラムでは、上位3着をランダムに予想するプログラムを書いてみます。

Pythonで競馬の上位3着を予想する

プログラムは次の通りです。

import random

tousuu = input('馬の頭数を入力してください')
tousuu = int(tousuu) + 1
print(random.sample(range(1,tousuu), k=3))

プログラムの解説です。

  • randomをインポートしています。
  • input関数により、ターミナル(Macの場合)で、レースの頭数を入力するようにしています。
    これは、競馬はレースによって、出走馬数が異なるためです。
  • 16頭が出走するレースの場合は、16と半角で入力します。
    ちなみにこのプログラムでは、2以下の数字を入力するとエラーとなります。
  • random.sampleは、重複しない結果を返します。
  • プログラムを実行する時は、ターミナルで python プログラム名.pyと入力してEnterします。
    プログラム名は任意の名前で良いです。

試しに実行した結果は次のようになりました。

馬の頭数を入力してください16
[9, 15, 2]

16頭を指定して、[9, 15, 2]というランダムな3つの数字が返りました。

Win5をランダムに予想するプログラム

競馬にはwin5といって、5つのレースの1着全部を当てると、配当が出る賭け方があります。

win5用のランダム予想プログラムを作成しました。
プログラムは次の通りです。

import random

list=[]
for i in range(5):
    tousuu = input(str(i+1) + 'レーズ目の馬の頭数を入力してください')
    tousuu = int(tousuu) + 1
    kekka = random.sample(range(1,tousuu), k=1)
    list.append(kekka)
print(list)

プログラムの解説です。

  • 空のリストを作成しました。
  • 5レース分、出走数を聞いてきますので、5回入力する必要があります。
  • for文を使ってリストにランダム結果を順に格納しています。

試しに実行させたところ、次のような [[11], [1], [12], [17], [7]] という結果が返りました。

1レーズ目の馬の頭数を入力してください13
2レーズ目の馬の頭数を入力してください12
3レーズ目の馬の頭数を入力してください16
4レーズ目の馬の頭数を入力してください18
5レーズ目の馬の頭数を入力してください16
[[11], [1], [12], [17], [7]]

まとめ

Pythonで、競馬の馬をランダムに選択するプログラムを書きました。
ランダムですので、人気馬順などのデータを全く考慮しておりません。
ご了承ください。
最後までお読みいただきありがとうございました。





返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください