如何移动到不同的代码部分

How to move to a different section of code

新 python 程序员,正在寻找解决此问题的方法。我正在为一个学校项目制作一个自动填充规则,我将如何移动到我的代码的不同部分。例如,我希望能够重新 运行 这个函数,但这会破坏我的输入,因为我无法将它放入函数本身。

#TODO...
#Add students names in IN the code, same with num of students

numberOfStudents = 4

rubrick = ["Preparedness", "Engagement", "Perseverance", "Problem Solving", "Progessionalism"]
students = ["ROBERT", "DEVIN", "SKYLER", "XAVIER"]

def pickStudent():
    print('Please select your student...')

    for x in range(len(students)):
        print(students[x])


pickStudent()
userPicked = input().upper()

if userPicked == students[0]:
    print("You picked... " + students[0])

elif userPicked == students [1]:
    print("You picked... " + students[1])

elif userPicked == students [2]:
    print("You picked... " + students[2])

elif userPicked == students [3]:
    print("You picked... " + students[3])
else:
    print("Invalid user... \n")
    pickStudent()
    userPicked = input().upper() 

如有任何帮助,我们将不胜感激。

这里有几件事要挑出来。

您可能希望将用户选择置于 while 循环中,以确保它不断询问,直到给出正确答案。

您也不需要依次针对列表中的每个项目测试条目 - 而是使用 in 运算符查看是否在列表中找到输入的文本。

结合这些可以得到:

while userPicked not in students:
  userPicked = input().upper()

您可以使用 join 编写更简洁的代码,而不是遍历学生来打印它们 - 将 students 列表中的所有项目连接成一个字符串并打印:

print('\n'.join(students))