我想在创建某个类的实例时强制使用特定数量的参数。从我所读的here,即使我宣布
class someClass:
def __init__(self, arg1, arg2..):
# whatever
仍然可以像这样实例化someClass:
a = someClass()
我是python的新手,所以我强制执行的唯一想法是重载一个空构造函数并在其中抛出异常。但我更喜欢在编译时强制执行它的东西。这可能吗?
答案 0 :(得分:0)
正如您在尝试时所看到的那样,如果您的__init__
方法具有必需的参数,那么您无法在不传递这些参数的情况下创建对象。但我会告诫你,强迫"你的调用者做某事可能会违背Python粒度。通常,Python的口号是,#34;记录您的API,然后让调用者执行调用者将要执行的操作。"