这个没太多要说的,数据合适就是a,b 这样的格式,就像写入文件这样就行了,要注意的地方就是编码这块要用utf-8-sig,不然会乱码。
with open(f'{data_path}/xfd_{data_filename}.csv', 'a',
encoding='utf-8-sig') as file_object:
这块也是利用pandas的功能
import pandas as pd
cvsDataframe = pd.read_csv('xfd.csv')
resultExcelFile = pd.ExcelWriter('xfd.xlsx')
cvsDataframe.to_excel(resultExcelFile, index=False)
# resultExcelFile.save()
resultExcelFile.close()
一开始写的save()的方法,然后出警告了
FutureWarning: save is not part of the public API, usage can give unexpected results and will be removed in a future version
resultExcelFile.save()
就是说这个方法,不是一个公开的方法,将来会移除,后来看源码
def close(self) -> None:
"""synonym for save, to make it more file-like"""
self._save()
self._handles.close()
所以,就用close方法就可以了。
import pandas as pd
head_title = ['一份分类', '二级分类', '品名', '最低价', '平均价', '最高价', '规格', '产地', '单位', '发布日期']
data_list = [
{'prodCat': '肉禽蛋', 'prodPcat': '禽蛋类', 'prodName': '柴鸡蛋', 'lowPrice': '6.02', 'avgPrice': '7.21',
'highPrice': '8.4', 'specInfo': '', 'place': '', 'unitInfo': '斤', 'pubDate': '2022-11-19 00:00:00'},
{'prodCat': '肉禽蛋', 'prodPcat': '禽蛋类', 'prodName': '乌鸡蛋', 'lowPrice': '8.3', 'avgPrice': '8.9',
'highPrice': '9.5', 'specInfo': '', 'place': '', 'unitInfo': '斤', 'pubDate': '2022-11-19 00:00:00'},
{'prodCat': '肉禽蛋', 'prodPcat': '禽蛋类', 'prodName': '鸭胗', 'lowPrice': '13.0', 'avgPrice': '13.0',
'highPrice': '13.0', 'specInfo': '', 'place': '', 'unitInfo': '斤', 'pubDate': '2022-11-19 00:00:00'}
]
pd.DataFrame(data_list).to_excel('1.xlsx', header=head_title, index=False)
一开始很是纠结写入excel 这样的问题,没想到用pandas还是很方便的。