【发布时间】:2019-07-16 23:45:00
【问题描述】:
startdate = datetime.date(2018,1,1)
expirydate = datetime.date(2018,1,4)
data = dict()
for x in range(0,3):
for y in range(1,8):
data [y] = get_history(symbol="BANKNIFTY",
start= startdate,
end= startdate,
index=True,
option_type='CE',
strike_price= 27000,
expiry_date=expirydate)
startdate += datetime.timedelta(days=1)
expirydate += datetime.timedelta(days=7)
循环运行良好,但只给了我最后一组值,即当 x = 3 时。其余所有先前的值都被覆盖。
【问题讨论】:
-
您必须将不同的
y值与之前循环中的x值区分开来。例如,您可以设置data[(x, y)]而不是data[y]。 -
谢谢它的工作,我还需要问一件事。如何删除字典中的空值,因为它在周六和周日抛出空值
-
我会添加一个条件以避免将其添加到您的字典中。
-
可能是什么情况。试过 ifelse 但它没有按应有的方式工作。请提出建议。
标签: python pandas dictionary for-loop nsepy