-1
我正在创建一个名为Conversation的类作为较大代码的一部分,并且要确保用户输入的字段是有效的(如果它们无效,我想提出一个值错误),但我的is_valid方法不工作,当我运行程序:在类中验证方法
类谈话:
def __init__(self, members, size_limit, backup_policy, cloud_account_prefix='./'):
if not self.is_valid():
raise ValueError
self.members = members
self.size_limit = size_limit
self.backup_policy = backup_policy
self.cloud_account_prefix = cloud_account_prefix
self.backup_count = 0
self.size_count = 0
self.messages = []
def is_valid(self, members, size_limit, backup_policy, cloud_account_prefix):
if self.members < 2:
return False
if self.size_limit <= 10:
return False
if not path_ok(self.cloud_account_prefix):
return False
if self.backup_policy < 1:
return False
else:
return True
我在做什么错?
不工作?任何错误?你在哪里叫它? – Miguel
删除'自我'。在你的is_valid函数中。目前还没有定义。直接使用参数。例如:“if members <2:” –
为什么你不使用属性验证你的属性?你也应该给予更好的反馈;为什么不让验证抛出实际上说的错误*哪个值和为什么*? “有一个ValueError”没有告诉我什么,但例如“你必须指定至少两个成员”是有用的信息。 – jonrsharpe