我自学Python,而且我已经在这个循环问题上停留了一段时间。我写了一个脚本来每小时提取一次关于股票价格的数据,但是对于每小时的数据,我手动创建了新的变量来保存我的新数据。
下面附带的代码示例:
Display can be toggled by this report Item
感谢。
答案 0 :(得分:2)
你可以把你在迭代中重复的任何内容包含在for循环中(因此你会得到一个嵌套的for
循环)
如果您有一定次数要运行数据提取程序,例如12,那么请使用:
r = requests.get("https://api.website.com/v1/....")
data = r.json()
for i in range(12):
for x in data:
ticker = x['symbol']
cost = x['price_usd']
print(ticker + ":\t", cost)
# define a new name for our variable:
name = 'Marketcap{}.txt'.format(i)
with open(name, 'w') as outfile:
json.dump(data, outfile, indent=2)
time.sleep(3600)
如果你想永远使用它"有一个名为itertools
的内置库,它可以让你无限期地使用for
函数进行递增:
from itertools import count
for i in count(0):
for x in data:
ticker = x['symbol']
cost = x['price_usd']
print(ticker + ":\t", cost)
name = 'Marketcap{}.txt'.format(i)
with open(name, 'w') as outfile:
json.dump(data, outfile, indent=2)
time.sleep(3600)