Dans l'un des commentaires, vous dites:
D'une manière ou d'une autre, j'ai une valeur Nonetype, supposée être un int, mais c'est maintenant un objet Nonetype
Si c'est votre code, déterminez comment vous obtenez Nonelorsque vous attendez un numéro et empêchez cela de se produire.
Si c'est le code de quelqu'un d'autre, découvrez les conditions dans lesquelles il donne Noneet déterminez une valeur sensible à utiliser pour cela, avec le code conditionnel habituel:
result = could_return_none(x)
if result is None:
result = DEFAULT_VALUE
...ou même...
if x == THING_THAT_RESULTS_IN_NONE:
result = DEFAULT_VALUE
else:
result = could_return_none(x) # But it won't return None, because we've restricted the domain.
Il n'y a aucune raison d'utiliser automatiquement 0ici - des solutions qui dépendent de la "fausse" -ness de Nonesupposer que vous voudrez cela. Le DEFAULT_VALUE(s'il existe même) dépend complètement de l'objectif de votre code.