Python 范围内循环跳过
出于某种原因,范围(0,noYears)内i的Python 范围内循环跳过,python,loops,range,Python,Loops,Range,出于某种原因,范围(0,noYears)内i的不起作用? 虽然我把noYears的答案设为3,但在完成一次之后,它会转到下一行代码 有谁知道为什么会这样,因为我看不出哪里出了问题? :)代码不工作,因为while循环从不执行。你可以用两种方法解决这个问题 使用break语句,而不是将loop设置为1: salary=0 salaryArray=[] loop=0 noYears=int(input("How many years do you want to do salari
不起作用?
虽然我把noYears的答案设为3,但在完成一次之后,它会转到下一行代码
有谁知道为什么会这样,因为我看不出哪里出了问题?
:)代码不工作,因为while循环从不执行。你可以用两种方法解决这个问题
使用break语句,而不是将loop设置为1:
salary=0
salaryArray=[]
loop=0
noYears=int(input("How many years do you want to do salaries for? "))
for i in range(0,noYears):
while loop==0:
print()
print("You can add multiple sources of income, one at a time")
salaryType=input("Do you want to put in your salary hourly or yearly? (h/y) ")
if salaryType=="y":
salarySection=float(input("What is your salary? "))
salary=salarySection+salary
else:
salaryHourly=float(input("What are you payed per hour? "))
salaryWeekly=float(input("How many hours per week will you work? "))
salaryYearly=float(input("How many weeks per year will you work? "))
print()
salarySection=salaryHourly*salaryWeekly*salaryYearly
salary=salary+salarySection
repeat=input("Do you wish to add another source of income? (y/n) ")
if repeat=="n":
print("This year's anual salary is", salary)
salaryArray.append(salary)
loop=1
在for循环内将变量循环重置为0:
#previous code
repeat=input("Do you wish to add another source of income? (y/n) ")
if repeat=="n":
print("This year's anual salary is", salary)
salaryArray.append(salary)
break
请将你的代码精简到再现问题所需的最低限度。(例如,删除所有输入
语句)for循环正在工作。跳过的是while循环,因为loop
仍然是1。在调用while
循环之前,包括示例输入/输出以及输出与预期的不同可能会有所帮助
for i in range(0,noYears):
loop = 0
while loop==0:
# remaining code