私は今PythonOOPを学んでいて、以下のコードの何かと混同しています。
質問:
def __init__(self, radius=1):
引数/属性「radius=1」は正確にはどういう意味ですか?なぜそれは単に「半径」と呼ばれないのですか?メソッドarea()には、引数/属性「radius」はありません。コードのどこから「半径」を取得しますか?半径が5であることをどうやって知るのですか?
class Circle: pi = 3.141592 def __init__(self, radius=1): self.radius = radius def area(self): return self.radius * self.radius * Circle.pi def setRadius(self, radius): self.radius = radius def getRadius(self): return self.radius c = Circle() c.setRadius(5)
また、
以下のコード
name
で、括弧内に属性/引数がないのはなぜですか?なぜこのように書かれていなかったのですか:
def __init__(self, name)
そしてdef getName(self, name)
?class Methods: def __init__(self): self.name = 'Methods' def getName(self): return self.name