みらブログ

ファイアーエムブレム好きのヒーラー(気功師)永野晋太郎のブログ。京都駅・大阪駅周辺に出没。

プログラミングPython日誌その1〜FEクイズ

使っている言語

言語は主にPython。

1言語じゃ飽きるだろうと、Kotlinも入れといた。

iPhoneアプリもやるだろ!とSwiftも入れて、3言語やろうとしたが、Macが最新のあーだこーだと言われたので、素直に諦める。

 

情報収集

・本→ 

Pythonでつくる ゲーム開発 入門講座

Pythonでつくる ゲーム開発 入門講座

 

を採用(プログラミングの本は高い上。アマゾンマケプレで数百円で・・・というわけにもいかないらしく。年数が古い本を買うのもちょっとアレなので。)

高い本は、図書館に買ってもらいます。

 

・WEB

検索して出てきたものをガシガシ利用。

Qiita最高。

Progateは最初の最初にやっただけ。

 

 

WEBページも、2016や2017年のものをコピペしたりするとエラーが多いと感じる。本もページも2019年に近いものがいい。

 

勉強方法

検索しまくって写経とコピペを乱用。ホリエモンやその他の人も言ってたけど、写すのがいいと思う。指が覚える感じ。目指せピアニスト。

あとは「自分の」プログラムを作ること。どれだけしょぼくても「自分の」感がないと頭に入ってこない。というわけで以下、ここ数週間作ったもの一覧。

 

その1

QUESTION = [
"封印の剣の主人公は?",
"封印の剣のヒロインは?",
"封印の剣の輸送隊は?"]
R_ANS = ["ロイ","リリーナ","マリナス"]
R_ANS2 = ["ろい","りりーな","まりなす"]

for i in range (3):
print(QUESTION[i])
ans = input()
if ans == R_ANS[i] or ans == R_ANS2[i]:
print("正解です")
else:
print("不正解です")

 

初めて「作った感」のあるプログラム。本にあったのをFEに変えただけのクイズだが、こうするだけでも違う。

 

 

その2

import pandas as pd
import matplotlib.pyplot as plt
from pandas.plotting import scatter_matrix

data = pd.read_csv("riku1.csv")
data.describe()

plt.scatter(data['time'], data['st'])
plt.ylabel('st')
plt.xlabel('time')
plt.show()

 

CSVにまとめた陸上選手のタイムと身長比をグラフ(点が集まったやつ)で出すプログラム。

 

 

その3

from PIL import Image
import glob
from random import shuffle

x = glob.glob("gazou/*.jpg")#フォルダの中のjpgをリスト化
shuffle(x)#リストをシャッフル

# 画像を読み込む
img = Image.open(x[1])
print(type(img)) # <class 'PIL.PngImagePlugin.PngImageFile'>
print(img.size) # (320, 240)
print(img.mode) # RGBA
img.show() # 関連付けされているアプリで画像を表示


http://python-remrin.hatenadiary.jp/entry/2017/05/20/181211

を参考に。

コンビニのスティックパンを画像をランダムに出すプログラム(として俺は作った)

 

 

その4

import glob
from random import shuffle

mylist = ["初めての","誰でも","【大公開】","【初心者向け】","【上級者向け】","絶対読まないでください!","【今からできる】","【夢】","自分勝手になりましょう!","「 」]"]
mylist2 = ["たった1年で","三日ぼうずにならなくて済む","楽して","ライフワークが","そのうち","痛い目みる","鉄は熱いうちに打て","出会い","昨日まで"]
mylist3 = ["「 」"]
mylist4 = ["が改善する","。そんな心がスッキリする","10代のあなたにしかできない"]
mylist5 = ["5つのテクニック","ただ一つの法則","!!!","!?"]

shuffle(mylist)#リストをシャッフル
shuffle(mylist2)
shuffle(mylist4)
shuffle(mylist5)

print(mylist[1]+mylist2[1]+mylist3[0]+mylist4[1]+mylist5[1])

 

キーワード自動作成ツール的なやつをイメージ。入れてある文字は適当。

 

(続く)