For example:

class FooBar:
    def __init__(self):
        self.a: int = None
        self.foo: str = None

Is this bad practice/go against PEP guidelines or is it fine?

  • solrize@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    4 hours ago

    I’m going to say initializing them to None and updating them later is a code smell. If you can do so, make them non-optional and always initialize them to actual meaningful values.