[英]Python while loop does not continue
The program should keep asking the user to enter title and review while the answer for "Do you want to continue(Y/N)?" 该程序应继续要求用户输入标题并进行评论,同时回答“是否要继续(是/否)?”。 is Y. Instead it ask the user only once.
是Y。而是只询问用户一次。 Can someone help me figure out while the loop does not continue .
有人可以帮我弄清楚循环是否继续。 Thanks!
谢谢!
#!/usr/bin/env python
def main():
listOfReviews = obtainListOfReviews()
displayResults(listOfReviews)
def obtainListOfReviews():
listOfReviews = []
carryOn ='Y'
while carryOn =='Y':
title = raw_input("Enter title:")
review = int(input("Enter review:"))
st = MovieReview(title, review)
listOfReviews.append(st)
carryOn = raw_input("Do you want to continue?(Y/N)? ")
carryOn = carryOn.upper()
return listOfReviews
def displayResults(listOfReviews):
for r in listOfReviews:
print(r)
class MovieReview:
def __init__(self, title = " ", review = 0):
self._title = title
self._review = review
def setTitle(self, title):
self._title = title
def setReview(self, review):
self._review = review
def getTitle(self):
return self._title
def getReview(self):
return self._review
def __str__(self):
return ("Title: " + str(self._title) + " \nreview: " + str(self._review))
main()
You have a wrong indentation for you line "return listOfReviews" : 您在“ return listOfReviews”行中的缩进错误:
def obtainListOfReviews():
listOfReviews = []
carryOn ='Y'
while carryOn =='Y':
title = raw_input("Enter title:")
review = int(input("Enter review:"))
st = MovieReview(title, review)
listOfReviews.append(st)
carryOn = raw_input("Do you want to continue?(Y/N)? ")
carryOn = carryOn.upper()
# Correct indentation
return listOfReviews
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.