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

如何将Python DataFrame每行指定字段值存入不同变量?

解决方案:动态存储DataFrame行数据到可迭代结构

由于DataFrame行数不固定,不建议生成独立变量(动态创建变量会让代码难以维护,不符合Python编程规范),推荐用列表或字典来批量存储每行的字段值,以下是具体实现:

方法1:用列表存储每行字段值

遍历DataFrame的每一行,将tradingsymbol、overnight_quantity、average_price打包成元组,存入一个列表中,后续可直接遍历列表处理数据。

import pandas as pd

# 假设你的DataFrame名为df
data_list = []

# 遍历每一行提取数据
for _, row in df.iterrows():
    symbol = row['tradingsymbol']
    quantity = row['overnight_quantity']
    price = row['average_price']
    data_list.append((symbol, quantity, price))

# 后续使用示例:遍历列表执行业务逻辑
for symbol, quantity, price in data_list:
    # 这里替换成你的实际代码
    print(f"标的:{symbol},隔夜持仓量:{quantity},成交均价:{price}")

方法2:用字典按标的映射数据

如果需要通过tradingsymbol快速查询对应的持仓量和均价,可以用字典存储,以标的名为键,持仓量和均价组成的子字典为值。

data_dict = {}

for _, row in df.iterrows():
    symbol = row['tradingsymbol']
    data_dict[symbol] = {
        'overnight_quantity': row['overnight_quantity'],
        'average_price': row['average_price']
    }

# 后续使用示例:通过标的名直接获取数据
target_symbol = "XXX"
if target_symbol in data_dict:
    quantity = data_dict[target_symbol]['overnight_quantity']
    price = data_dict[target_symbol]['average_price']
    # 执行你的业务逻辑

为什么不推荐动态生成独立变量?

如果用globals()或locals()动态创建symbol_1、quantity_1这类变量,会导致代码结构混乱,后续难以追踪变量状态,行数变化时还要额外处理变量名生成逻辑,完全没有必要。用列表或字典这类可迭代结构,既能适配行数变化,又能让代码更易读、易维护。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 22:02:09