所以这是我的代码,当我将所有内容都设置为“打印”时,代码可以工作,但现在“返回”在我选择主题、主题和问题/答案后程序终止。我做了这个程序来输入我的闪存卡问题和答案,然后可以选择主题,然后选择一个主题,然后选择是只看问题、答案还是两者都看。我注意到在每个列表的末尾都会出现“无”这个词,我试图通过用“返回”替换“打印”来解决这个问题,但这带来了更多问题,我真的很感激一些关于我的意见应该做。
代码如下
——伊桑,13 岁
import sys
subjects = ["History", "Science"]
topics_science = ["Light", "X-mas Exam Review"]
topics_history = ["Italian Renaissance"]
science_xmasreview = ["Q. What do we use to catogorize a habitat?", \
"A. Damp or Dry, Hot or Cold, Windy or Calm, Dim or Bright.", \
"Q. What is something that only eats plants?", \
"A. Herbivore", \
"Q. What are the properties of oxygen?"]
science_light = [
"Q. What is an object the gives out light?", \
"A. Light source", \
"Q. What is the speed of light?", \
"A. 300 million meters per second.", \
"Q. What does transparent mean?", \
"A. Light can pass completely through a transparent material."]
history_renaissance = [
"Q. What did Lorenzo do differently from Cosimo?", \
"A. Lorenzo made no effort to conceal his power", \
"Q. Why did the Pope want Lorenzo dead?", \
"A. Because the Pope wanted more power and saw Lorenzo as a threat.", \
"Q. Who did the Pazzi plot with to kill Lorenzo?", \
"A. Pope Sixtus IV"]
def qanda(x):
print
print "Enter 1 for just questions"
print "Enter 2 for just answers"
print "Enter 3 for both"
qa = raw_input("Enter number: ")
qa = str(qa)
if qa == '1':
printer(x[::2])
elif qa == '2':
printer(x[1::2])
elif qa == '3':
printer(x)
else:
print "Not recognized"
def newline():
raw_input()
print
def printer(list):
n = 0
l = len(list)
print
while n < l:
return list[n]
newline()
n += 1
while n == l:
n += 1
def subjectchoice():
if subject == "1":
print
history()
elif subject == "2":
print
science()
else:
print 'Not recognized.'
def science():
print topics_science
print "Enter 1 for Light"
print "Enter 2 for X-mas Exam Review"
topicchoice = raw_input("Enter number: ")
topicchoice = str(topicchoice)
if topicchoice == "1":
qanda(science_light)
elif topicchoice == "2":
qanda(science_xmasreview)
else:
print "Not recognized"
sys.exit
def history():
print topics_history
print "Enter 1 for Italian Renaissance"
topicchoice = raw_input("Enter number: ")
topicchoice = str(topicchoice)
if topicchoice == "1":
return qanda(history_renaissance)
else:
print "Not recognized"
sys.exit()
print subjects
print "Enter 1 for History"
print "Enter 2 for Science"
subject = raw_input("Enter number: ")
subject = str(subject)
subjectchoice()