找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2012|回复: 0

[求助] def当不匹配if语句时,如何循环?

2

主题

2

帖子

2

积分

贫民

积分
2
linqunbin 发表于 2018-12-6 19:46:41 | 显示全部楼层 |阅读模式
新手小白,要联系写个简单的程序,新增学生信息时,先检查Id有没有被占用,现在希望学生Id被占用时,打印一段提示,同时直接让用户输入一个新的Id,请问怎么实现?

如下代码,当if student_list["Id"] == a_id: 匹配时,如何循环到a_id = input("请输入您要添加的Id:"),而不是要返回主程序.想了半天不知道怎么做.



def add_student():
    students_dict = {}
    a_id = input("请输入您要添加的Id:")
    if students_lists:
        for student_list in students_lists:
            if student_list["Id"] == a_id:
                print("您输入的Id:%s已存在,请跟换一个Id.\n" %a_id)
                choice = input("1,返回主页面,按其它任意键,退出程序:")
                if choice == "1":#返回主程序
                    return
                else:#退出程序
                    exit()
    a_name = input("请输入您要添加学生的名字:")
    a_age = input("请输入您要添加学生的年龄:")
    a_** = input("请输入您要添加学生的性别:")
    a_subject = input("请输入您要添加学生的学科:")
    students_dict["Id"] = a_id
    students_dict["Name"] = a_name
    students_dict["Age"] = a_age
    students_dict["**"] = a_**
    students_dict["Subject"] = a_subject
    students_lists.append(students_dict)
    print("学员Id:%s,添加成功." %a_id)
    choice = input("1,返回主页面,按其它任意键,退出程序:")
    if choice == "1":  # 返回主程序
        return
    else:  # 退出程序
        exit()

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表