繁体   English   中英

编写CSV文件Python3问题

[英]Writing CSV file Python3 issue

我正在使用poloniex Trader API来获取实时市场行情信息。 它在控制台上完美运行。 每当我要求回报市场报价时,我都会得到这个{'last': '0.07269671', 'high24hr': '0.07379970', 'quoteVolume': '71582.56540639', 'isFrozen': '0', 'lowestAsk': '0.07277290', 'percentChange': '-0.00551274', 'id': 148, 'low24hr': '0.07124645', 'highestBid': '0.07269671', 'baseVolume': '5172.41552885'}

问题是它仅存储项目名称/列表名称,例如low24hr, lowestAsk, highestBid etc 不是他们的值low24hr : 0.07124645

polo = Poloniex()
ticker_data = (polo('returnTicker')['BTC_ETH'])

out = csv.writer(open("myfile.csv","w"), delimiter=',',quoting=csv.QUOTE_ALL,)
out.writerow(ticker_data)
print(ticker_data)

这是我的csv文件的样子- ImageView的

ImageView的

with open('my_file.csv', 'w') as f:
    for key, value in ticker_data.items(): f.write('{0},{1}\n'.format(key, value))

这里

您的问题是out.writerow(ticker_data)仅采用字典的键并将其写入文件。 尝试使用csv.DictWriter

with open('myfile.csv', 'w', newline='') as csv_file:
    # Pass the keys of the `ticker_data` as the fieldnames.
    writer = csv.DictWriter(csv_file, fieldnames=ticker_data, quoting=csv.QUOTE_ALL)
    # Write the fieldnames.
    writer.writeheader()
    # Write the values.
    writer.writerow(ticker_data)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM