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

使用Pandas根据逗号分隔姓名查找并拼接对应ID值

需求说明

给定如下数据表:

NameIds
Bob'1','2'
Tom'3','4'

要求:当输入逗号分隔的姓名字符串(比如「Bob,Tom」或「Bob, Tom」)时,返回对应的所有ID值并以逗号拼接,最终输出格式为 '1','2','3','4'。需要用Pandas完成这个查找拼接操作。

实现代码
import pandas as pd

# 初始化对应的数据表
df = pd.DataFrame({
    'Name': ['Bob', 'Tom'],
    'Ids': ["'1','2'", "'3','4'"]
})

def get_combined_ids(name_input):
    # 处理输入:拆分姓名、去除多余空格,兼容带/不带空格的输入格式
    target_names = [name.strip() for name in name_input.split(',')]
    # 筛选匹配姓名的行
    matched_data = df[df['Name'].isin(target_names)]
    # 拼接所有ID字符串
    combined_result = ','.join(matched_data['Ids'].tolist())
    return combined_result

# 测试示例
test_input = 'Bob, Tom'
output = get_combined_ids(test_input)
print(output)  # 输出结果:'1','2','3','4'
代码说明
  • 先把原数据表用Pandas的DataFrame构建出来,确保Ids列的格式和原表完全一致
  • 处理函数里先对输入做清洗:按逗号拆分姓名后,去掉每个姓名前后的空格,不管输入是带空格还是不带空格的格式都能适配
  • 用Pandas内置的isin()方法快速筛选匹配行,比手动循环遍历数据高效得多
  • 最后把筛选出来的所有ID字符串直接拼接,得到符合要求的结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 06:10:50