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

调用函数时能否在一个参数中访问同函数的另一个参数值?

函数参数中能否直接访问同函数的其他参数值?

这种写法不可行。

原因很简单:Python在调用函数时,所有参数的表达式都是在函数执行前就计算完成的。也就是说,你写在index参数里的代码,会先于pd.Series函数的调用执行,这时候data参数的值还没传递给函数,自然没法直接引用它。

给你几个可行的替代方案:

  • 方案一:提前把数据存为变量(就是你最开始的写法,清晰直观)
import pandas as pd

data = [40, 70, 90]
series = pd.Series(data=data, name='marks', index=range(len(data)))

(这里可以简化range(0, len(data))为range(len(data)),默认就是从0开始)

  • 方案二:利用pandas的默认索引
    其实如果你不指定index参数,pd.Series会自动生成从0开始的整数索引,和你手动生成的效果完全一致,这是最省事的写法:
import pandas as pd

series = pd.Series(data=[40, 70, 90], name='marks')
  • 方案三:用海象运算符简化(Python 3.8及以上版本支持)
    如果不想单独写一行变量定义,可以用海象运算符在参数表达式里临时赋值:
import pandas as pd

series = pd.Series(data=(d := [40, 70, 90]), name='marks', index=range(len(d)))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 03:30:14