7

以下のクラスを受講

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の方法は何を推奨していますか?

4

1 に答える 1