如何在嵌套循环中调用值?

How to call upon values in a nested loop?

我正在准备我的第一次编程考试 class。我不知道如何在嵌套循环中调用和求和给定索引的值。我需要将每个员工的工资以及每个员工的工作时间加在一起。这些值嵌套为 [employee_records] 中的 [record],分别作为索引 2 和 3。任何帮助将不胜感激!

这是我遇到的错误:

line 54, in <module>
    for y in record[2]:
TypeError: 'float' object is not iterable

代码如下:

    num_employees = int(input("Enter number of salespersons to be evaluated: "))
numNums = num_employees
employee_records = []
wage = None
lrange = [1, 2, 3, 4]
while num_employees > 0:
    record = []
    name = (input("Enter employee name: "))
    try:
        level = int(input("Enter this employee's level: "))
        if level not in lrange:
            print("Employee level must be from 1 to 4.  Please re-enter employee's name.")
            if numNums < num_employees:
                num_employees += 1
            continue
    except ValueError:
        print("Employee level must be from 1 to 4.  Please re-enter employee's name.")
        if numNums < num_employees:
            num_employees += 1
        continue

    try:
        hours = float(input("Enter hours worked by this employee: "))
    except ValueError:
        print("Entry must be a number.  Please re-enter employee's name.")
        if numNums < num_employees:
            num_employees += 1
        continue

    try:
        sales = float(input("Enter revenue generated by this employee: "))
    except ValueError:
        print("Entry must be a number.  Please re-enter employee's name.")
        if numNums < num_employees:
            num_employees += 1
        continue
    num_employees -= 1

    record.append(name.capitalize())
    record.append(level)
    record.append(hours)
    record.append("${:,.2f}".format(sales))
    employee_records.append(record)

print(employee_records)
totalsales = None
totalhours = None
for x in employee_records:
    for y in record[2]:
        totalhours += y
    for y in record[3]:
        totalsales += y
print(totalhours)
print(totalsales)

您不需要嵌套循环。直接使用字段即可。但是,您不应将销售额格式化为字符串。您需要原始数字才能进行数学运算。打印时格式化,而不是之前。

    record.append(name.capitalize())
    record.append(level)
    record.append(hours)
    record.append(sales)
    employee_records.append(record)

print(employee_records)
totalsales = None
totalhours = None
for x in employee_records:
    totalhours += record[2]
    totalsales += record[3]
print(totalhours)
print(totalsales)