Je suis novice en python et j'essaie de gérer les erreurs, mais je ne connais pas la façon la plus efficace de gérer les erreurs dans python. J'ai essayé de cette façon, mais cela semble un peu complexe à comprendre. Je pense que peut exister une autre "meilleure" façon de le gérer.Quelle est la manière la plus efficace de gérer les erreurs dans python?
def set_bit(value, pos, nbits):
"""
Set bit at position.
Keyword Arguments
value (int)
Bitstring value.
pos (int)
Position to set bit.
nbits (int)
Number of bits.
"""
if isinstance(value, int):
if value > -1:
# Positives only
if isinstance(pos, int):
if pos > -1:
if isinstance(nbits, int):
if nbits > -1:
return get_bistring(value | 2 ** (pos % nbits), nbits)
else:
raise ValueError(
'"nbits" was set {}, but it must be positive only'
.format(nbits)
)
else:
raise TypeError(
'"nbits" was set {}, but it must be int only'
.format(type(nbits))
)
else:
raise ValueError(
'"pos" was set {}, but it must be positive only'
.format(pos)
)
else:
raise TypeError(
'"pos" was set {}, but it must be int only'
.format(type(pos))
)
else:
raise ValueError(
'"value" was set {}, but it must be positive only'
.format(value)
)
else:
raise TypeError(
'"value" was set {}, but it must be int only'
.format(type(value))
)
au lieu de 'if else' aller avec' try' 'except' – 0TTT0