存储

文件存储

 1data = [
 2    {"name": "张三", "age": 18},
 3    {"name": "李四", "age": 20},
 4    {"name": "王五", "age": 22},
 5]
 6
 7# 写csv文件
 8import csv 
 9fieldnames = data[0].keys()
10with open("data.csv", mode='w', newline='', encoding='utf-8') as csvfile:
11    # 创建DictWriter对象
12    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
13 
14    # 写入表头
15    writer.writeheader()
16 
17    # 写入数据
18    for row in data:
19        writer.writerow(row)
20
21# 将字典列表转换为DataFrame
22import pandas as pd
23df = pd.DataFrame(data)
24 
25# 指定CSV文件的文件名
26filename = "output2.csv"
27 
28# 将DataFrame写入CSV文件
29df.to_csv(filename, index=False, encoding='utf-8-sig')
30
31
32# 写json
33import json
34with open("data.json", "w") as f:
35    json.dump(data, f, indent=4,ensure_ascii=False)
36
37# 写excel
38
39import openpyxl
40wb = openpyxl.Workbook()
41ws = wb.active
42# 写入表头
43ws.append(["name", "age"])
44 
45# 写入数据
46for item in data:
47    ws.append([item["name"], item["age"]])
48 
49# 保存工作簿到文件
50wb.save("output.xlsx")
51

db存储

 1data = [
 2    {"name": "张三", "age": 18},
 3    {"name": "李四", "age": 20},
 4    {"name": "王五", "age": 22},
 5]
 6import pymysql  
 7
 8db = pymysql.connect(host='localhost',user='root', password='123456', port=3306)  
 9cursor = db.cursor()
10sql = 'INSERT INTO students(name, age) values( %s, %s)'
11for data_item in data: 
12    try:
13        cursor.execute(sql, (data_item["name"], data_item["age"]))
14        db.commit()
15    except:
16        db.rollback()
17db.close()