gpt4 book ai didi

python - 如何使用getattr调用字符串作为属性?

转载 作者:行者123 更新时间:2023-12-01 09:26:54 25 4
gpt4 key购买 nike

import pandas as pd

def test_run():
for symbol in ['nugt', 'soxs']:
for stat in ['max', 'min', 'mean']:
print(f"{stat} Close")
print(symbol, get_stat(symbol, stat))

def get_stat(symbol, stat):
df = pd.read_csv(f"{symbol}.csv")
return getattr(df['close'], stat())

if __name__ == "__main__":
test_run()

我正在尝试打开 2 个 Excel 文件(soxs.csv 和 nugt.csv),查看“关闭”列并在每个文件的“关闭”列中找到最大值、最小值和平均值。

我得到的结果是“TypeError:'str'对象不可调用”。但我用应该运行的属性来调用它,只是尝试通过使用循环以更少的代码来完成它。关于如何解决这个问题有什么建议吗?

最佳答案

stat 是一个字符串,因此您可以调用它,您可以通过如下方式获取 attr:

return getattr(df['close'], stat) 

它返回方法,调用时您应该使用 () 并根据需要发送参数,如下所示:

return getattr(df['close'], stat)()

关于python - 如何使用getattr调用字符串作为属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50313902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com