トップページ > プログラム > 2016年07月17日 > RUz2QEu1

書き込み順位&時間帯一覧

32 位/163 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000001010000002



使用した名前一覧書き込んだスレッド一覧
教えてくん
Pythonのお勉強 Part51 [転載禁止]©2ch.net

書き込みレス一覧

Pythonのお勉強 Part51 [転載禁止]©2ch.net
475 :教えてくん[]:2016/07/17(日) 15:13:01.02 ID:RUz2QEu1
Ruby使っていましたが、Pythonに移行中の初心者です。

クラスの作り方を勉強しています。

以下のコードを書いてもエラーがでないのですが、この場合、say_hello メソッドは、どういう種類のメソッドになっているのでしょうか?

class MyClass(object):
□□def say_hello():
□□□□print "Hello!"


通常、インスタンスメソッドは、say_hello(self) と定義、

クラスメソッドは、@classmethod、スタティックメソッドも、@staticmethod が必要ですよね。

よろしくお願いします。
Pythonのお勉強 Part51 [転載禁止]©2ch.net
478 :教えてくん[]:2016/07/17(日) 17:34:57.97 ID:RUz2QEu1
なるほど! 確かに、クラスメソッドのように呼び出せました。

自分なりの理解ですが、
クラスメソッドに @classmethod 指定したり、cls を引数に持って行ったりというのは、
メソッド内で、クラス変数にアクセスするための仕組みなのかなぁと理解しました。

今回のケースは、クラス変数にアクセスする必要がないので、こう書けたのかな。 ありがとうございました!!


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。