Python 如何使用for循环从嵌套数据中获取各自的统计信息
我有python中的数据:Python 如何使用for循环从嵌套数据中获取各自的统计信息,python,Python,我有python中的数据: { u'stats': [ u'Jul 23, 2015', u'Jul 24, 2015', u'Jul 25, 2015', u'Jul 26, 2015' ], u'tickers_data': [ {u'amount': [936, 804, 977, 954], u'name': u'adv'} ] } 预期的输出是:将所有日期和相应的金额值存储
{
u'stats': [
u'Jul 23, 2015',
u'Jul 24, 2015',
u'Jul 25, 2015',
u'Jul 26, 2015'
],
u'tickers_data': [
{u'amount': [936, 804, 977, 954], u'name': u'adv'}
]
}
预期的输出是:将所有日期和相应的金额值存储到数据库中
我该怎么做?要获取日期:
data["stats"]
要获取金额,请执行以下操作:
data["tickers_data"][0]["amount"]
一旦有了这两个列表,就可以使用将这两个列表组合成可以迭代的元素对:
data = {
u'stats': [
u'Jul 23, 2015',
u'Jul 24, 2015',
u'Jul 25, 2015',
u'Jul 26, 2015'
],
u'tickers_data': [
{u'amount': [936, 804, 977, 954], u'name': u'adv'}
]
}
days = data['stats']
ticker = data['tickers_data'][0]['amount']
for day, amount in zip(days, ticker):
print(day, "->", amount)
输出:
$ python3 x.py
Jul 23, 2015 -> 936
Jul 24, 2015 -> 804
Jul 25, 2015 -> 977
Jul 26, 2015 -> 954
如果这不是你的意思,你需要在你的问题中提供更多的细节,说明你正在尝试做什么,以及你期望最终结果是什么样子。您还应该尝试编写您尝试执行的初始尝试代码,并将该代码发布在问题中。您可以使用类似以下内容来显示它:
data_dict = {
u'stats': [
u'Jul 23, 2015',
u'Jul 24, 2015',
u'Jul 25, 2015',
u'Jul 26, 2015'
],
u'tickers_data': [
{u'amount': [936, 804, 977, 954], u'name': u'adv'}
]
}
print "Ticker name '%s':" % data_dict[u'tickers_data'][0][u'name']
dates = data_dict[u'stats']
amounts = data_dict['tickers_data'][0][u'amount']
for date, amount in zip(dates,amounts):
print " Date: %s, Amount: %s" % (date, amount)
这将提供以下输出:
Ticker name 'adv':
Date: Jul 23, 2015, Amount: 936
Date: Jul 24, 2015, Amount: 804
Date: Jul 25, 2015, Amount: 977
Date: Jul 26, 2015, Amount: 954
如果要将数据存储在文件中,可以添加以下内容:
with open("ticker_data.txt", "w") as f_output:
f_output.write("Ticker name '%s':\n" % data_dict[u'tickers_data'][0][u'name'])
for date, amount in zip(dates,amounts):
f_output.write(" Date: %s, Amount: %s\n" % (date, amount))
使用Python 2.7测试日期和金额是如何链接的?非常感谢。它起作用了。我想在MySQLdb中插入此数据。你能帮我怎么做吗。从创建表开始插入查询。------列名日期金额和响应数据:2015年7月23日->2015年7月24日936->2015年7月25日804->2015年7月26日977->954Great!别忘了标记一个。对于你的第二个问题,我建议你首先在StackOverflow上搜索其他问题,或者在Google上搜索类似的教程。试着先写一个解决方案,然后询问StackOverflow是否卡住了,或者是否抛出了错误,等等。这将帮助你成为一名更好的程序员,让你自学,而不是让自己走完每一步。祝你好运,黑客快乐:)