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

如何访问字典中Pandas Series内指定球队对应的Pos值

解决方案

示例数据结构

先假设你的dict_group结构如下(模拟业务数据):

import pandas as pd

dict_group = {
    'A组': pd.DataFrame({'Pos': [1, 2, 3, 4], 'Team': ['Qatar', 'Senegal', 'Netherlands', 'Ecuador']}),
    'B组': pd.DataFrame({'Pos': [1, 2, 3, 4], 'Team': ['England', 'USA', 'Iran', 'Wales']})
}

直接获取指定球队的Pos值

通过定位分组、筛选球队,直接提取对应Pos值:

# 定义目标分组和球队
target_group = 'A组'
target_team = 'Senegal'

# 提取Pos值
pos_value = dict_group[target_group].loc[dict_group[target_group]['Team'] == target_team, 'Pos'].iloc[0]
print(pos_value)  # 输出:2

封装成函数(复用场景)

如果需要多次查询,封装成函数更高效:

def get_team_pos(dict_group, group_name, team_name):
    # 检查分组是否存在
    if group_name not in dict_group:
        return None
    group_data = dict_group[group_name]
    # 筛选目标球队的Pos值
    team_pos = group_data[group_data['Team'] == team_name]['Pos']
    # 返回结果(无匹配则返回None)
    return team_pos.iloc[0] if not team_pos.empty else None

# 使用示例
print(get_team_pos(dict_group, 'A组', 'Senegal'))  # 输出:2

注意事项

  • 确保分组名、球队名的拼写、大小写完全匹配,否则会无法匹配结果
  • 若同一分组内存在重复球队名,iloc[0]会返回第一个匹配项的Pos值,可根据实际需求调整逻辑
  • 无匹配结果时,函数返回None,你也可以改为抛出异常或返回特定标记值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 22:15:26