You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中按百分比规则修改数字列表并保留原顺序的方法

解决方案

你的代码问题在于拆分列表后再合并,破坏了原列表的元素顺序。要保留顺序,只需要逐个遍历原列表的每个元素,根据条件计算对应的值,直接生成新的结果列表即可。

可以用列表推导式结合三元表达式实现,代码更简洁高效:

gross_list = [1350.50, 1240.25, 987.45, 1017.27, 870.9, 990.5]

print("Gross income list:", gross_list)

# 保留原顺序,按条件计算每个元素的新值
settlement_list = [i * 1.15 if i < 1000 else i * 1.12 for i in gross_list]

print("Settlement:", settlement_list)

payroll = sum(settlement_list)
print("Payroll:", format(payroll, ".2f"))

代码说明:

  • i * 1.15 等价于 i + i*0.15,写法更简洁
  • 列表推导式遍历原列表的每个元素,按条件计算后直接加入新列表,完全保留原顺序
  • 求和时直接使用新列表,无需合并两个拆分后的列表

输出结果:

Gross income list: [1350.5, 1240.25, 987.45, 1017.27, 870.9, 990.5]
Settlement: [1512.56, 1389.08, 1135.5675, 1139.3424, 1001.535, 1139.075]
Payroll: 7317.16

内容的提问来源于stack exchange,提问作者davidpal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 20:15:03