通常攻撃が全体攻撃で二回攻撃のお母さんを、Pythonにやらせよう


はじめに

通常攻撃が全体攻撃で二回攻撃のお母さんは好きですか?』の1話を見て「これ、Pythonで再現できるな」と思ったシーンがあるので、やってみました。
勢いで書き上げており、既出ネタであった場合は失礼しました。

動作環境

  • macOS 10.14.4
  • Python 3.7.3

インタラクティブシェルを使っています。

再現するシーン

ゲームにおける「アカウント」がわからず質問したお母さん。
「自身の解釈ではアカウントは何か」とたずねられ、「あ、あ、あ、あ」と「あ」を指折りカウントするシーン1です。

Pythonでやってみた

お母さんの「あ」の指折りカウントを再現してみます。

>>> ironna_a = ['あ', 'あ!', 'ア', 'ア!']
>>> for a in ironna_a:
...     print(a)
... 




繰り返しとprintで、「あ」の連呼(指折りカウントの様子)が再現できました!

関数にしてみた

>>> def account_ga_wakaranai_okaasan():
...     ironna_a = ['あ', 'あ!', 'ア', 'ア!']
...     for a in ironna_a:
...         print(a)
... 
>>> account_ga_wakaranai_okaasan()




これでいろんなところで、お母さんを呼び出せますね!

以上がお母さんの再現ですが、Pythonでは「あ」のカウントも再現できることに気づきました。

Pythonで「あ」をカウントしてみた

>>> ironna_a = ['あ', 'あ!', 'ア', 'ア!']
>>> ironna_a.count('あ')
1

Pythonのリスト2にはcountメソッドがあります

list.count(x)
リストでの x の出現回数を返します。

リストに含まれる「あ」(の数)をカウントしました。

Pythonで「あ」をカウントしてみた その2

リストについてカウントできるとわかったので、リストの変数名を工夫してみます。

>>>  = ['あ', 'あ!', 'ア', 'ア!']
>>> .count('')
0

Python3系では日本語のようなマルチバイト文字も変数に使えます。
変数「あ」にリストを代入しました。

ドキュメント
https://docs.python.org/ja/3/reference/lexical_analysis.html#identifiers

解説記事
https://note.nkmk.me/python-identifier-naming-rule/

これがホントのあcount
おあとがよろしいようで。


  1. 天然設定なんですかね?かわいかったです 

  2. 他の言語の「配列」に当たるかと思います。ドキュメントに即すと、リストは複数の値をまとめるのに使うデータ型の1つで、カンマで区切った値の並びを[]で囲って表します ref:https://docs.python.org/ja/3/tutorial/introduction.html#lists