我正在使用python。这就是我想要做的事情:
要求用户使用以下代码选择学生所关注的课程: CS为GCSE计算机科学 ICT用于GCSE ICT 在屏幕上显示学生详细信息: 如果用户输入CS用于课程,则应将其显示为“GCSE计算机科学”,如果他们输入ICT,则应显示“GCSE ICT”。如果输入任何其他数据,则应显示错误消息。 要求用户确认信息是否正确。 如果任何信息不正确,请让用户重新输入,然后再次显示学生详细信息。 返回欢迎信息。
print("Contact Details")
def rep():
global course
course = input("Enter CS or ICT")
rep()
if course == "cs":
print("You have selected GCSE Computer Science")
correct=input("Is this correct?")
if course == "yes":
print("Contact Details")
else:
rep()
if course == ICT:
print("You have selected GCSE ICT")
correct=input("Is this correct?")
if correct == yes:
print("Contact Details")
else:
rep()
else:
print("ERROR!!!")
rep()
我的错误是:
RESTART: C:\Users\Azad\Documents\Homework\Computer Science\Practise Task 1.py
Contact Details
Enter CS or ICTCS
ERROR!!!
Enter CS or ICT
答案 0 :(得分:1)
似乎你错误地分配给course
变量。你需要说明的是global
。我想你想要这个,对吧?
global course
def rep():
global course
course = input("Enter CS or ICT. Enter EXIT to quit... ")
while True:
print("Welcome message here...")
rep()
if course == "EXIT":
break
elif course == "CS":
print("You have selected GCSE Computer Science")
while True:
correct=input("Is this correct? ")
if correct == "yes":
print("CS Contact Details")
break
elif correct == "no":
break
else:
print("Please, type yes or no")
elif course == "ICT":
print("You have selected GCSE ICT")
while True:
correct=input("Is this correct? ")
if correct == "yes":
print("ICT Contact Details")
break
elif correct == "no":
break
else:
print("Please, type yes or no")
else:
print("ERROR. Please, select CS or ICT")
答案 1 :(得分:1)
您应该在'
和"
以及代码中的其他'cs'
周围放置单引号('ict'
)或双引号(string
),如& #39;是&#39 ;.您还可以使用.lower
确保您的代码在人们输入CS
或Yes
之类的内容时起作用:
if course.lower() == 'cs':
print("You have selected GCSE Computer Science")
顺便提一下,请在您在SO中发帖时写下错误。