我有一个函数,我想在运行sp500_rsi时使用装饰器:
def generate_sp500(start_date):
"block of code to generate pandas dataframe"
return sp500
字符串
在下面的函数中,我想替换生成下面的变量sp500的代码块:
def sp500_rsi(start_date, rsi):
sp500 = generate_sp500() "would like to replace this with a decorator"
sp500['rsi'] = "some methods that populates the new column with values"
型
我想做的是:
@sp500_decorator
def sp500_rsi(rsi):
return sp500
型
理想情况下,sp500_rsi
可以使用generate_sp500()
创建的变量sp500
。
我试图创建装饰器,但是我不能得到我想要装饰的函数来识别sp500
变量。
我看到其他线程与某人有类似的问题,但不完全相同的using *args
。不知道这是否是我的装饰函数的方式,以及如何去。
1条答案
按热度按时间gev0vcfq1#
这是关于函数作用域的,不在约定作用域内的变量不能被调用。你可以尝试将变量“sp500”设置为全局变量。
字符串