【python】python将json字符串导出excel | pandas处理json字符串保存为csv

如何将json转为csv

1、通过json直接转为csv

在Python中,你可以使用pandas库来处理DataFrame(数据帧)和将JSON数据转换为CSV格式。下面是一个简单的示例代码,展示了如何使用pandas库将JSON数据转换为CSV文件:

import pandas as pd

# 示例JSON数据
json_data = [
    {"name": "Alice", "age": 25, "city": "New York"},
    {"name": "Bob", "age": 30, "city": "San Francisco"},
    {"name": "Charlie", "age": 22, "city": "Los Angeles"}
]

# 将JSON数据加载到DataFrame
df = pd.DataFrame(json_data)

# 将DataFrame保存为CSV文件
csv_filename = "output.csv"
df.to_csv(csv_filename, index=False)

print("JSON数据已转换为CSV文件:", csv_filename)

【python】python将json字符串导出excel | pandas处理json字符串保存为csv_第1张图片

2、在csv中继续追加json

注意:

  • 这里使用的是最新版本的pandas版本

如果你希望每次执行都将新的JSON数据添加到同一个CSV文件中,而不是覆盖之前的数据,你需要在每次执行时加载CSV文件,然后将新的JSON数据追加到已有的CSV文件中。以下是修改过的代码示例,实现了将每次执行的JSON数据追加到同一个CSV文件中:

import pandas as pd

# 示例JSON数据
json_data = [
    {"name": "David", "age": 28, "city": "Chicago"},
    {"name": "Eve", "age": 33, "city": "Seattle"},
    {"name": "Frank", "age": 40, "city": "Boston"}
]

# CSV文件名
csv_filename = "output.csv"

try:
    # 尝试加载已有的CSV文件
    df = pd.read_csv(csv_filename)
except FileNotFoundError:
    # 如果文件不存在,创建一个新的DataFrame
    df = pd.DataFrame()

# 将新的JSON数据加载到DataFrame
new_data = pd.DataFrame(json_data)
df = pd.concat([df, new_data], ignore_index=True)

# 将DataFrame保存回CSV文件
df.to_csv(csv_filename, index=False)

print("新的JSON数据已追加到CSV文件:", csv_filename)

此版本的代码使用concat方法将新的JSON数据追加到已有的DataFrame中。这个方法可以接受一个包含要连接的DataFrame的列表,ignore_index=True参数确保生成的DataFrame重新索引以避免索引冲突。然后再将整个DataFrame保存回同一个CSV文件中。这样,每次执行代码时,新的JSON数据都会被添加到同一个CSV文件中而不会覆盖之前的数

你可能感兴趣的:(python,python,pandas,json)