アクセス制限(アクセス制限できるとは言っていない)
レッスンはクラスの応用に入りました。まずはアクセス制限の話だったのですが、そもそもPython自体にはアクセス制限という概念はないそうです。外部からアクセスされたくないメンバー変数は変数名をアンダースコアから始める、という慣習があるだけです。アンダースコア二つだと普通の方法では呼び出せないですが、特殊な書き方をすると呼び出せてしまうので、これも相当怖いですね。
やりたいことをやったり
書きたいことを書いたり
そんな感じのブログです
レッスンはクラスの応用に入りました。まずはアクセス制限の話だったのですが、そもそもPython自体にはアクセス制限という概念はないそうです。外部からアクセスされたくないメンバー変数は変数名をアンダースコアから始める、という慣習があるだけです。アンダースコア二つだと普通の方法では呼び出せないですが、特殊な書き方をすると呼び出せてしまうので、これも相当怖いですね。
東京が暑すぎて、まるまる1週間もサボってしまいました。クーラーが効いた部屋でも汗がにじんでしまうのはいくらなんでも酷すぎます。果たしてこの暑さで東京オリンピックを開催しても大丈夫なのでしょうか? 自分みたいなのがきにしても仕方がありませんが……。
レッスンは関数に突入しました。関数を先に書かなければいけないこと、返り値を設定しないとNoneが一応返ってくることなどが注意点ですかね。それ以外は他の言語の関数と変わらないのでそこまで難しくはないかなと。
練習がてら、先日書いた九九のプログラムを少し書き換えました。
# coding: utf-8
from __future__ import print_function
def print_dan(dan):
for x in range(1, 10):
print("{0:>3d}".format(x * dan), end = "")
else:
print("")
for dan in range(1, 10):
print_dan(dan)
こういう簡単なプログラムも、復習として積極的に書いていきたいですね。
レッスンはいよいよwhile文、for文に突入です。while文は他の言語と変わらない感じですが、for文はC#などのforeachに近い仕様です。他の言語のfor文を書きたいときはwhileを使うのがメインとなるのでしょうか。
# coding: utf-8
for i in range(10):
print(i)
else:
print("end")
ここまで習ったことを活かして、九九をキレイに表示するプログラムを書いてみました。
# coding: utf-8
from __future__ import print_function
for x in range(1, 10):
for y in range(1, 10):
print("{0:>3d}".format(x * y), end = "")
else:
print("")
Python 3だと2行目は要らないと思います。
1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81
てな感じで、レッスンは#09まで終わりました。次からはいよいよ関数です。
間が空いて3日目です。原因は夏風邪と天候不良による気象病であって、決して王位戦第1局や王座戦決勝トーナメント準決勝の生放送をずっと見ていたからではありません。ちなみに土日は元からやるつもりはありませんでした。仕事の時間代わりの勉強ですからね。