如果您将它用于现实世界的项目,我建议您input
从 python 本身使用,这个库似乎没有很好的文档和维护。这可能会在您的代码中为将来带来很多奇怪的错误。
但是要回答您的问题,您可以使用带有参数blockRegexes的正则表达式来完成。如果您无法理解,这将是一个正则表达式问题而不是 python 问题。
从这个网站你可以学到很多关于正则表达式的知识,我推荐,正则表达式是一个非常重要的理解工具。关于您的问题,根据文档:
blocklistRegexes
(序列,无):
(regex_str, error_msg_str)
如果匹配,将显式验证失败的正则表达式 str 或元组序列。
因此,在您的情况下,元组中的第一项应该是一个正则表达式,用于阻止具有多于或少于 10 个整数字符的所有内容:
^\d{10}$
这个正则表达式的完整解释可以在这里找到
您的 touple 中的第二项应该是您希望在发生错误时出现的字符串:
“请输入有效的 10 位电话号码”
所以你的代码会是这样的:
number = pyip.inputNum("Enter your phone number : ",
min=1000000000,
max=9999999999,
blockRegexes=[(r"^\d{10}$","please enter a valid 10 digit phone number")])