看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)仓库计费:基础运费 base
元,超重后每公斤加收 extra
元。
import pandas as pd
df = pd.DataFrame({
"包裹号": ["P1", "P2", "P3"],
"重量_kg": [0.5, 1.2, 0.8]
})
写外部函数 calc_fee(row, base, extra)
,再 一行 apply 传入 base=8, extra=3
,新增列 总费用
。
代码如下:
def calc_fee(row, base, extra):
return base + max(0, row['重量_kg'] - 1) * extra
df['总费用'] = df.apply(calc_fee, axis=1, base=8, extra=3)
print(df)
输出:
包裹号 重量_kg 总费用
0 P1 0.5 8.0
1 P2 1.2 8.6
2 P3 0.8 8.0
(完)
更新时间:2025-08-24 20:58:09 标签:pandas python apply 函数 参数