Ich habe mich über die besten Praktiken für die Anzeige von ungültigen Argumentkombinationen in Python gewundert. Ich habe über ein paar Situationen kommen, wo Sie eine Funktion wie so haben:
def import_to_orm(name, save=False, recurse=False):
"""
:param name: Name of some external entity to import.
:param save: Save the ORM object before returning.
:param recurse: Attempt to import associated objects as well. Because you
need the original object to have a key to relate to, save must be
`True` for recurse to be `True`.
:raise BadValueError: If `recurse and not save`.
:return: The ORM object.
"""
pass
Das einzige Ärgernis dabei ist, dass jedes Paket seine eigene, meist leicht abweichende BadValueError
. Ich weiß, dass es in Java Folgendes gibt java.lang.IllegalArgumentException
-- ist es klar, dass jeder seine eigene Website erstellen wird BadValueError
s in Python oder gibt es eine andere, bevorzugte Methode?