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

Python报错AttributeError: 'list'对象无split属性,如何解决?

问题解决:AttributeError: 'list' object has no attribute 'split'

错误原因

你报错的核心原因是**data是普通Python列表,而非pandas Series**,但你误用了pandas的str属性方法(data.str.strip())。对列表调用str.split()后会得到嵌套列表,后续遍历的row已是列表类型,自然没有split()方法。

修正方案

根据你的数据格式,分两种场景处理:

场景1:data是普通Python列表

如果data是包含各条action ID字符串的列表(比如["10", "10|11", ...]),直接遍历处理每个元素:

action_ids_list = [list(map(int, row.strip().split('|'))) for row in data]

场景2:data是pandas Series

如果data是从DataFrame的string_action_ids列取出的Series,无需按换行拆分,直接对每个元素按|拆分并转整数:

action_ids_list = data.str.strip().str.split('|').apply(lambda x: list(map(int, x))).tolist()

验证示例

用你提供的测试数据测试:

data = [
    "10",
    "10|11",
    "10|11|12|13|14|17|18|19|20|22|23|24|25|29|30|38|42|43|44|45|49",
    "10|11|12|13|16|17|18|22|23|24|25|28|29|35|38|41|42|43|45|46|50|54",
    "10|11|12|13|16|22|23|24|25|28|29|35|38|41|42|45|46|50|54"
]
action_ids_list = [list(map(int, row.strip().split('|'))) for row in data]
print(action_ids_list)

输出会是符合需求的嵌套整数列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 08:42:15