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

如何生成SeriesEntry对象序列传入get_unified_series函数?

问题解决:生成SeriesEntry对象序列替代字符串列表

问题描述

现有如下代码,需要传入多个SeriesEntry对象实例到mda.get_unified_series()函数中:

for n in results[:10]:
    data_frame = mda.get_unified_series(
    SeriesEntry('nyse_vl'),
    SeriesEntry('useqin0016'),
    ......
   ).to_pd_data_frame()

由于有成千上万个ticker需要处理,手动逐个编写SeriesEntry不现实,于是编写了如下函数,但返回的是字符串列表而非对象实例:

def produce_list(list):
    final =[]
    for n in list:
        final.append("SeriesEntry(" + "'" + n + "'" +')')
    return final

返回结果示例:

["SeriesEntry('nyse_vl')",
 "SeriesEntry('useqin0016')",
.....
]

实际需要的是SeriesEntry对象实例序列:

SeriesEntry('nyse_vl'),
SeriesEntry('useqin0016'),
.....

解决方案

你的函数错误地生成了字符串,直接创建SeriesEntry对象实例即可,无需拼接字符串。修改后的函数如下:

def produce_list(ticker_list):
    final = []
    for ticker in ticker_list:
        # 直接创建SeriesEntry对象并添加到列表
        final.append(SeriesEntry(ticker))
    return final

或者用更简洁的列表推导式写法:

def produce_list(ticker_list):
    return [SeriesEntry(ticker) for ticker in ticker_list]

调用方式

生成对象列表后,使用*运算符解包列表,将每个对象作为独立参数传入get_unified_series():

for n in results[:10]:
    # 假设你的ticker列表是tickers
    entry_list = produce_list(tickers)
    data_frame = mda.get_unified_series(*entry_list).to_pd_data_frame()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 15:32:43