分数 10
作者 王祥荣
单位 宁波财经学院
输入一组工资数据,写入列表。对于小于5000的工资,涨1.5倍。并输出涨后的工资数据。
输入格式:
输入若干个数据,各个数据之间用空格隔开。
输出格式:
涨工资后的数据,空格隔开。尾部不带空格。
输入样例:
3000 4000 6000 8000 2000.5
输出样例:
4500.0 6000.0 6000 8000 3000.75
试试1.1234*1.5就会发现python里面float会出问题
import decimal
s = list(map(eval, input().split()))
k=decimal.Decimal('1.5')
for i in range(0, len(s)):
if s[i] < 5000 and (s[i]//1)!=s[i]:
s[i] = str(decimal.Decimal(str(s[i]))*k)
s[i]=s[i].rstrip('0')
elif s[i] < 5000:
s[i] = str(decimal.Decimal(str(s[i])) * k)
print(s[0], end='')
for i in range(1, len(s)):
print(f" {s[i]}", end='')
本文介绍如何使用Python中的decimal模块处理工资数据,当输入的工资小于5000时,涨1.5倍,并展示了处理后的样例。作者提到使用`decimal.Decimal`避免float类型可能的问题。
144

被折叠的 条评论
为什么被折叠?



