おみくじプログラムをPythonを使って作ってみました!
基本的な機能を勉強するのにちょうど良いと思います!
Pythonを始めたきっかけについては、こちらをご覧ください!
☞【python】30代でプログラミング経験0の会社員がpythonを始めた。
・Pythonを0から勉強始めて勉強している人
・モジュール/リスト/辞書の具体的な使い方を知りたい人
Pythonの基礎はProgateと合わせて、この本も初心者に親切でわかりすく気に入っています。
目次
おみくじを作ってみた!(生コードはココ)
結果をランダムにするモジュールと、リスト・辞書を使って作りました。
次にあるのが実際におみくじを動かすプログラムです。
実行すると基本的にコードの一番上から下に向かって順番に読み込んでいきます。
▼この文字列全部まとめてコードと呼びます。
#randomのモジュールを設定
import random
#結果(result)をリスト化
result = [
'大吉!! あなたの思い通りに世の中は動く!',
'中吉! 誰と話しても楽しいでしょう',
'末吉 良縁に巡り合うでしょう',
'吉 平穏な一日になるでしょう',
'小吉 茶柱が立つでしょう',
'凶 自発的な行動は控えて!',
'大凶 家から出ないで!!',]
#resultからランダムに選ぶ
omikuji = random.choice(result)
#名前の入力を求める
name = input('あなたの名前を入力してください:')
#結果を出力
print(name + 'さんの運勢は' + omikuji)
次から、このコードの中身は何をやっているかの話です。
①おみくじの結果を選ぶ為のモジュールを読み込む
そもそもモジュールって何??ってことなんですけど。
pythonには、モジュールという「工具セット」のようなものがありまして。
コードの書き始めに、その工具セットを読み込ませた後、
工具セットの中にある「工具自体」を呼び出す言葉を入れると
初めてモジュールを動かすことができるわけです。
今回の場合、「random(ランダム)」というモジュールですが、その名の通り結果をランダムに選んだりすることができるモジュールです。
設定する(読み込ませる)時は、importを使ってこうします。
import random
ということは、おみくじの結果を出すにもってこいのモジュールというわけです!!
②リストを作る(おみくじの結果一覧)
おみくじの結果の一覧を作る為に、「リスト」というコードを作ります。
その名の通り、リスト(項目の一覧)です。
例えば
list = [納豆,たまご,ご飯]
#リストを出力する
print(list)
#実行した結果
[納豆,たまご,ご飯]
という風に、リストをそのまま出力すると、そのまま表示されるだけです。
それとリストには、こんな順番で番号が自動で割り振られています。
[‘リスト番号①’ , ‘リスト番号②’ , ‘リスト番号③’]
で、実際にはこの中から選んで使ったり項目を追加したりできます。
例えば
#リストの作成
list = [納豆,たまご,ご飯]
#リストを出力する
print(names[0])
print(len(names))
#実行した結果
納豆
3
▲「#リストを出力する」には、2行ありますよね?
↓この意味は
1行目=リスト番号0を出力する
2行目=リスト内にある項目の数を出力を意味してます
それが、「#実行した結果」に反映されています。
ここで、おみくじプログラムのコードにあるリストを見てみると
リストの結果がおみくじの結果になっていると思います。
③リストの結果をランダムに選ぶ
これがrandomモジュールを使ってリストから、1つ結果を選ぶ(抜き出す)コード
omikuji = random.choice(result)
リストの下にこのランダムに選ぶコードを入れます。
④おみくじの結果を「出力」
おみくじ結果を表示させるために、printを使って出力させてます。
ということで
おみくじプログラム完成!!
チープ感は否めないですけどね!笑
応用すると…?
辞書のコードを使うとより、こんな風に詳細なおみくじ結果を出すことができます。
#ランダムのモジュールを設定
import random
#結果(result)をリスト化
result = [
{'all':'大吉! すべてよし','work':'仕事運:何やっても上手くいきそう!'},
{'all':'中吉 まぁまぁよし','work':'仕事運:注目された時がチャンス!'},
{'all':'末吉 ほどよし','work':'仕事運:有意義なディスカッションでモチベアップ!'},
{'all':'吉 よし','work':'仕事運:平穏な1日を過ごせそう!'},
{'all':'小吉 少しよし','work':'仕事運:問題が起きても前向きに乗り越えられそう!'},
{'all':'凶 わるし','work':'仕事運:注意散漫になった時に気をつけて!'},
{'all':'大凶 かなりわるし','work':'仕事運:出過ぎた発言で信用を無くさないように!!'}]
#resultからランダムに選ぶ
omikuji = random.choice(result)
#名前の入力を求める
name = input('あなたの名前を入力してください:')
#結果を出力
print('\n' + '--------------------' + '\n' + name + 'さんの運勢は' + omikuji['all'] + '\n' + '\n' + omikuji['work'] + '\n' + '--------------------' + '\n')
また、次回あたりにできたら良いなと思ってます!
この本でPythonの基本を学びました
今までプログラミングに触れてこなかったので、何からどうやって手をつけて良いか全くわかりませんでした。
参考までですがこのPython入門 はPrintやif文、リストや辞書などの基本的な使い方がプログラミングに触れたことが無い初心者の目線で「わかりやすく」読みやすいのでおすすめです。
追記:教わりたい人に最適なサイト見つけました!
無料でオンライン講座を受けられるサイトを見つけました。
スクールですが週5でpythonの無料オンライン講座を開催してるんです。
具体的にはpythonの基礎講座で使われている題材を使って講義しています。
実際に講座を受けることで知識の吸収具合がわかるので、講座を受けてスキルを伸ばすべきか独学でググるスタンスが良いのかを判断する良いきっかけにもなると思います。
いきなり独学でどこから手をつけて良いかわからない方には断然おすすめの講座です。
まとめ
モジュールとリストと辞書の勉強になりました。自分的には、もう少し体に染み込ませてスラスラ打てるようになりたいところです!
プログラミングの先輩方が言うにも、できるだけ毎日触っていると身についてくるということだったので染み込ませたいですね。
不明点などあればお気軽に言ってください。
ぜひとも頑張っていきましょう!
それではっ!