这是哈佛大学的CS50P,给出的要求是我应该实现一个函数is_valid,检查用户输入是否符合梳妆台的要求。
我的代码满足所有要求,除了"使用的第一个数字不能是" 0 ""。
函数is_valid需要一个if/else语句,该语句接受用户输入(字符串)(以"s"的形式传递给is_valid),并确保其中的第一个数字不是0。
理想情况下,如果找到的第一个数字是0,它将返回False,因为这将使该板作为空板无效。
要求如下所列:https://cs50.harvard.edu/python/2022/psets/2/plates/
我的代码如下:(删除评论,因为我没有得到Github格式)
def main():
plate = input("Plate: ")
if is_valid(plate):
print("Valid")
else:
print("Invalid")
def is_valid(s):
if len(s) < 2 or len(s) > 6:
return False
if s[0].isdigit() == True or s[1].isdigit() == True:
return False
for i in range(len(s)): #
if s[i].isdigit():
if not s[i:].isdigit():
return False
if s.isalnum() == False:
return False
else:
return True
main()
3条答案
按热度按时间pqwbnv8z1#
首先你必须循环字符串,如果当前字符是一个数字,那么如果它是0,返回False,否则,转到下一步
cuxqih212#
满足该计划所有要求的一个可能的完整解决方案是:
cczfrluj3#
如果数字等于零,则只需插入第一个数字验证:
那应该足够了!:)