kwsktr's study log

kwsktr のおべんきょログ

def () 文が、なんとなくわかりかけた

「プログラムの勉強で躓かない方法が知りたい」 って、ずっと思ってた。なんども挫折して、やっと、わかった。ボクに向いている方法が、やっとわかった。・・・書くこと。当たり前の方法だった。

例えばいま、Pythonのお勉強をしているんだけど・・・

>>> def kwsktr():
...     print "kawasakitaro"
...
>>> kwsktr()
kawasakitaro

・・・こんな、単純な関数定義だけど、疑問がふつふつと湧き出す。

  • なんで def文の最後に : つけなあかんの? とか
  • >>>kwsktr() の () はずしたら って怒られた! とか
  • >>> print kwsktr ってやったら って怒られた! とか

みたいな。


「何故こうなるんだろう・・・?」という疑問は、自分で調べないと、誰も答えてくれない。当然、本(『みんなのPython』)にも、書いていない。そういうところが、独学の辛いところ。本のサンプルだけ書いていれば、「何故」はなくなるのだけれど、いろいろ試してみたくなってしまうんだよね。「そゆことやったらダメってルールなんだよ」と、理解すればいいのだろうけれどね。でも、試してみたくなるじゃない。
で、そんなことでいちいち、止まっていたら、先に進まないわけですよ。で、飽きて挫折。その繰り返しだった。


だから、ボクは、ノートに書くようした。アナログなんです、ごめんなさい。
サンプルコードぐらいの短い文なら、書いても対して時間はかからないし。書いてみてわかることは、なんだかんだいって、「答え」になるだけの知識のストックがなかったんだなーというのが、なんとなくわかりかけたわけで。
あとは、キーワード的なものを、別個学習すればいいのかなぁと。名前空間 とか ローカル変数 とか 組み込み関数 とか。
「何がわかっていないのか、わからない」 こんな状態を防がないと、いけないわけですね。
でも、まだ、わかっていないので、調べつつですけれどね。


いや、まあ、紙に書くより、wiki なり はてな にガシガシ書くのもいいのかもしれないけど。


最終的に何かを作りたい、という目的が希薄だったりするけれど、PHPと絡めてDjangoでなにかやってみたいな。