为什么赢了';t my if,else语句在while循环中用python工作
If/else语句在while循环中不起作用。这个程序的目的是“让用户输入一个数字,打印出它前面的每个数字,判断数字是偶数还是奇数,打印总数。然后让用户输入他是否想重复这个过程”。这是源代码(请记住,我是一名学生,对编码非常陌生):为什么赢了';t my if,else语句在while循环中用python工作,python,if-statement,while-loop,Python,If Statement,While Loop,If/else语句在while循环中不起作用。这个程序的目的是“让用户输入一个数字,打印出它前面的每个数字,判断数字是偶数还是奇数,打印总数。然后让用户输入他是否想重复这个过程”。这是源代码(请记住,我是一名学生,对编码非常陌生): if语句将反复运行,无论我为repeat变量输入什么,谁能告诉我原因。或语句对第一个布尔值求值,如果为False,则对第二个布尔值求值。您的第二个布尔语句实际上是一个字符串,字符串总是True,这意味着它们存在。唯一返回False的字符串是空字符串“” 因此,无论第
if语句将反复运行,无论我为repeat变量输入什么,谁能告诉我原因。或
语句对第一个布尔值求值,如果为False,则对第二个布尔值求值。您的第二个布尔语句实际上是一个字符串,字符串总是True,这意味着它们存在。唯一返回False的字符串是空字符串“
”
因此,无论第一个布尔值是什么,也就是说无论repeat
的值是什么,“yes”
的计算结果始终为True
你想要如果repeat==“Yes”或者repeat==“Yes”
或者如果repeat in['Yes','Yes']
或者更好地使用一个集合:如果repeat in{'Yes','Yes'}
是的,这个问题会很多repeat==“是”或“是”
与repeat==“是”或repeat==“是”
不同。后者是你想要的,因为前者总是,总是,总是,总是真实的:)这一个很难寻找,使它更有趣。
print("Christian Dooley")
print("Lab #5")
import sys
def calculation():
counter = 0
NumberOfElements = 1
numbers = []
sum = (0)
for i in range(NumberOfElements):
value=eval(input("Enter a new number:"))
numbers.append(value)
while counter <= value:
print(counter)
sum+=counter
counter+=1
if counter % 2 != 0:
print("This number is even")
else:
print("This number is odd")
print(sum)
while True:
calculation()
repeat = input("Do you want to 'count' another number \n Awnser yes or no: ")
if repeat == "Yes" or "yes":
calculation()
elif repeat == str("no") or str("No"):
break
if repeat == "Yes" or "yes":
calculation()
elif repeat == str("no") or str("No"):
break