2021年度にしてみます。
このブログではプログラムをなんとか説明してみようと暗中模索状態です。
誤字脱字は見つけ次第直しているのですが申し訳ないレベルで存在しています。
<初めに>
プログラムをマスターするとお金に苦労しない生活ができる確率があがる
<プログラムとは>
プログラムとは入れ子と命令の連続体である
<できない理由>
プロモン プログラムにはモンスターたちがうようよいる
<変数>
変数が一番シンプルな入れ物
レジスタの進化系
<リスト>
配列(リスト)
変数の軍団 配列名[n]で n番目の変数を召喚できる
<命令>
なにかしてくれる
<関数>
命令の軍団 配列名()でいろいろしてくれる
かなり自在だけどなかなか懐いてくれない
<クラス>
別の世界 変数と関数で構成される
変数や関数が増えすぎると名前をつけるのが大変
そこでクラス名.変数名とすると元の世界の変数名とは別物
異世界で生活したいなら必須 転生できる確率は5%ぐらいか
これをPythonのプログラムで表現してみる
#<初めに>
#プログラムをマスターするとお金に苦労しない生活ができる確率があがる
#<プログラムとは>
program = ["入れ子"]*5+["命令"]*5
#<できない理由>
promon = ["モンスター"]*100
#<変数>
a="あ"
b=5
#<リスト>
a=[1,2,3,4,5]
print(a[1])
#<命令>
print(3+5)
print(sum(a))
#<関数>
def kansu(txt):
print(txt)
kansu(a)
#<クラス>
class cla:
def __init__(self, a):
self.a = a
def p():
print(p)
c=cla("スライム")
c.p()
実行結果
最後バグだらけでした
#<クラス>
class cla:
def __init__(self, a):
self.a = a
def p(self):
print(self.a)
c=cla("スライム")
c.p()
プログラムを再度 日本語に戻してみます
<初めに>
プログラムをマスターするとお金に苦労しない生活ができる確率があがる というコメント
<プログラムとは>
programという配列に入れ子という文字を5個と命令という文字を5個いれます
<できない理由>
promonという配列にモンスターいう文字を100個入れます
<変数>
aにあという文字を入れます
bに5という数字を入れます
<リスト>
aに配列 1,2,3,4,5を入れます
aの1番目を表示します(最初は0番目なのがくせもの)
<命令>
3+5を表示します
aの合計を表示します
<関数>
kansuという関数はtxtを使います
txtを表示します
kansuという関数にaを渡します
<クラス>
クラス claを作ります
初期化関数に自分とaを渡します
自分のaをaにします(この辺は私もポルナレフ状態なので気にしないでOK)
関数pに自分を渡します
自分のaを表示します
cをクラスcla初期化関数にスライムをわたします
claの関数pを呼び出します(この時自分(self)はいらない)
最後に記号の補足説明です(記号は言語によって異なります)
<初めに>
# その行の#のあとはコメント(なにもしない たいていはプログラムのその部分の説明)
<プログラムとは>
[] の中は配列の定義 , は1つずつの区切り ""の中は文字列(別空間 基本文字になる) * 計算のxもじれつだと繰返す + 計算の足す文字列だとくっつける
<できない理由>
= 右のものを左に入れる
<変数>
a="あ"
b=5
<リスト>
a=[1,2,3,4,5]
() 括り 関数に渡す値をくくって渡している 配列名[n]で配列のn番目を意味する 同じ記号でも使い方が異なるケース
<命令>
print(3+5)
print(sum(a))
<クラス>
: 命令のまとまり このあと字下げの同じ位置か後ろにあるものをまとめる あとスライスの区切りにも使われる
__init__ クラスであらかじめ予約された関数などで__が使われる あと関数名、変数名をわかりやすくするための区切りに_が使われる
. 少数点として使われる クラス名.で 異世界の変数名、関数名(異世界ではメソッドという)を使う時に使われる
def p(self):
print(self.a)
c=cla("スライム")
c.p()
あとループがあります。
Pythonマスターになりたければスライス、内包表記、辞書ぐらいでしょうか
誤字脱字は発見した都度修正いたします。
最後にテストにでそうなところ赤入れしておきます。
なんかのたしになれば幸いです。