Tôi đã tự hỏi về các thực tiễn tốt nhất để chỉ ra các kết hợp đối số không hợp lệ trong Python. Tôi đã gặp một vài tình huống trong đó bạn có một chức năng như vậy:
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
Khó chịu duy nhất với điều này là mọi gói đều có cái riêng, thường hơi khác nhau BadValueError
. Tôi biết rằng trong Java tồn tại java.lang.IllegalArgumentException
- có hiểu rõ rằng mọi người sẽ tạo ra BadValueError
s của riêng họ trong Python hoặc có một phương thức ưa thích khác không?