我正试图在下面代码中的点之后用2位数的浮点数求和员工工资,但给了我这个错误。
我明白错误的类型,但不幸的是,我不知道如何修复它。我尝试了不同的方法,但出现了相同的错误。
staffName=[]
staffSalary=[]
for name in range(0,5):
print('Enter staff name:')
staffName.append(input())
for salary in range(0,5):
print('Enter salary:')
staffSalary.append("{:.2f}".format(float(input())))
print('Staff details entered:n')
for i in range(0,5):
print(staffName[i], ' ', staffSalary[i])
result=sum(staffSalary)
print('nTotal salary amount is: ', result)
totalIncrease=(result * 10) / 100 + result
print('Total salary amount with 10% increase: ',totalIncrease)
在您的行staffSalary.append("{:.2f}".format(float(input())))
中,看起来您正在接受输入并将其转换为浮点数(听起来正确),但随后您将其转换为字符串。所以你最终添加到列表中的是一个字符串,而不是浮点数。
我认为你只想要staffSalary.append(float(input())
。然后列表将包含所有浮点数项。当你有一个包含这些数字的字符串时,你可以做一些字符串转换。