以下のクラスを受講
class Person(object):
def __init__(self, first_name, last_name):
self.first_name = first_name
self.last_name = last_name
次の使用法を防ぐにはどうすればよいですか?
p1 = Person('Foo', 'Bar')
p1.firstname='Fooooooo'
上記のコードは Python で正常に実行されますが、プロパティの名前に誤りが_
ありfirst
ました。name
更新: これは「モンキー パッチ」のように聞こえますが、なぜこれを行う必要があるのですか?
私の意図は、ユーザーが間違ったプロパティを設定したり、コードを実行したり、予期しない動作を確認したりして、すぐに間違いに気付かないようにすることです。
ここでPythonicの方法は何を推奨していますか?