Python 如何修复此程序中的while循环?

Python 如何修复此程序中的while循环?,python,Python,编写一个包含3个列表的python程序: 姓名工资工时 胡安7.5035 Rae11.0041 伊凡娜18.2526 礼来9.2535 罗伯特11.1045 用这个逻辑: 员工工作超过40小时就会加班 加班工资使用以下公式计算: 工资总额=(35*工资)+(35小时)*工资*1.5) 定期工资使用以下公式计算: 工资总额=(小时*工资) 使用循环来处理这些列表 打印每位员工的工资、工时和工资总额 我正在运行这个程序,我有for循环。输入工作正常,但是while循环应该有相同的输出,但它根本没有给

编写一个包含3个列表的python程序:

姓名工资工时 胡安7.5035 Rae11.0041 伊凡娜18.2526 礼来9.2535 罗伯特11.1045

用这个逻辑:

员工工作超过40小时就会加班

加班工资使用以下公式计算:

工资总额=(35*工资)+(35小时)*工资*1.5)

定期工资使用以下公式计算:

工资总额=(小时*工资)

使用循环来处理这些列表

打印每位员工的工资、工时和工资总额

我正在运行这个程序,我有for循环。输入工作正常,但是while循环应该有相同的输出,但它根本没有给我任何输出。这是我的密码

`Name = ["Juan","Rae","Ivanna", "Lilly", "Robert"]
Hours = [35,41,26,35,45]
Wage = [7.5,11,18.25,9.25,11.1]
print ("Name\tWage\tHours\tGP")
for X in range(5):
   GP = 0
   if(Hours[X] > 40):
       GP = (35*Wage[X]) + ((Hours[X]-35)*Wage[X]*1.5)
   else:
       GP = Hours[X] * Wage[X]
   print (Name[X],"\t", Wage[X],"\t", Hours[X],"\t", GP)

Name = ["Juan","Rae","Ivanna", "Lilly", "Robert"]
Hours = [35,41,26,35,45]
Wage = [7.5,11,18.25,9.25,11.1]
print ("Name\tWage\tHours\tGP") 
counter = 5
Y = 0
while (Y):
    if (Hours[Y] > 40):
        GP = (35*Wage[Y]) + ((Hours[Y]-35)*Wage[Y]*1.5)
    else:
        GP = Hours[Y] * Wage[Y]
print (Name[Y],"\t", Wage[Y],"\t", Hours[Y],"\t", GP)`
我的产量是

Name    Wage    Hours   GP
Juan     7.5     35      262.5
Rae      11      41      484.0
Ivanna   18.25   26      474.5
Lilly    9.25    35      323.75
Robert   11.1    45      555.0
Name    Wage    Hours   GP
Juan     7.5     35      555.0

我不知道while循环中的错误在哪里

最后一行需要缩进。所以不是

while (Y):
    if (Hours[Y] > 40):
        GP = (35*Wage[Y]) + ((Hours[Y]-35)*Wage[Y]*1.5)
    else:
        GP = Hours[Y] * Wage[Y]
print (Name[Y],"\t", Wage[Y],"\t", Hours[Y],"\t", GP)
这是必须的

while (Y):
    if (Hours[Y] > 40):
        GP = (35*Wage[Y]) + ((Hours[Y]-35)*Wage[Y]*1.5)
    else:
        GP = Hours[Y] * Wage[Y]
    print (Name[Y],"\t", Wage[Y],"\t", Hours[Y],"\t", GP)

因为现在,
print
在while循环之外,所以它只打印值
Y=0

必须遵循
python代码缩进
,并且需要使用(递增/递减/布尔)给出适当的
while循环条件。因为您的代码需要增加
Y
的值

Name = ["Juan","Rae","Ivanna", "Lilly", "Robert"]
Hours = [35,41,26,35,45]
Wage = [7.5,11,18.25,9.25,11.1]
print ("Name\tWage\tHours\tGP")
for X in range(5):
    GP = 0
    if(Hours[X] > 40):
        GP = (35*Wage[X]) + ((Hours[X]-35)*Wage[X]*1.5)
    else:
        GP = Hours[X] * Wage[X]
    print (Name[X],"\t", Wage[X],"\t", Hours[X],"\t", GP)

Name = ["Juan","Rae","Ivanna", "Lilly", "Robert"]
Hours = [35,41,26,35,45]
Wage = [7.5,11,18.25,9.25,11.1]
print ("Name\tWage\tHours\tGP") 
counter = 5
Y = 0
while (Y<counter):
    if (Hours[Y] > 40):
        GP = (35*Wage[Y]) + ((Hours[Y]-35)*Wage[Y]*1.5)
    else:
        GP = Hours[Y] * Wage[Y]
    print (Name[Y],"\t", Wage[Y],"\t", Hours[Y],"\t", GP)
    Y=Y+1
Name=[“胡安”、“雷”、“伊凡娜”、“莉莉”、“罗伯特”]
小时数=[35,41,26,35,45]
工资=[7.5,11,18.25,9.25,11.1]
打印(“名称\tWage\tHours\tGP”)
对于范围(5)内的X:
GP=0
如果(小时[X]>40):
GP=(35*工资[X])+((小时[X]-35)*工资[X]*1.5)
其他:
GP=小时[X]*工资[X]
打印(姓名[X]、“\t”、工资[X]、“\t”、工时[X]、“\t”、GP)
姓名=[“胡安”、“雷”、“伊凡娜”、“莉莉”、“罗伯特”]
小时数=[35,41,26,35,45]
工资=[7.5,11,18.25,9.25,11.1]
打印(“名称\tWage\tHours\tGP”)
计数器=5
Y=0
而(Y 40):
GP=(35*工资Y])+((小时Y]-35)*工资Y]*1.5)
其他:
GP=小时[Y]*工资[Y]
打印(姓名[Y]、“\t”、工资[Y]、“\t”、工时[Y]、“\t”、GP)
Y=Y+1

您忽略了条件必须是
Y
,并且在循环体
Y+=1的末尾需要增加
Y
。因为它的状态值总是错误的,所以循环体永远不会运行。非常感谢你们。我以前试过,但没有正确地结合在一起!现在一切都好了!