You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何每次运行脚本时创建新的JSON文件存储数据

实现每次运行脚本创建新的序列JSON文件

我来帮你搞定这个需求!你想要每次运行脚本都生成一个全新的dataN.json文件(比如data1.json、data2.json),而不是覆盖或追加到同一个文件,同时每个新文件首行固定写入Infotext,之后再写入你的Saving内容对吧?

核心思路

首先得确定当前目录下已经存在多少个dataX.json格式的文件,找到最大的编号后加1,就能得到下一个要创建的文件名。然后用这个新文件名创建文件,先写入首行的Infotext,再写入你的Saving内容。

完整代码示例

import json
import os

# 定义固定的首行文本
Infotext = "First name : Last name : Email"
# 假设你的Saving变量已经定义好(比如从用户输入或其他逻辑获取)
firstname = "Hello"
lastname = "World"
email = "helloworld@test.com"
Saving = f"{firstname} {lastname} - {email}"

# 步骤1:获取下一个文件的编号
file_numbers = []
# 遍历当前目录下的所有文件
for filename in os.listdir('.'):
    # 筛选出data开头、.json结尾的文件
    if filename.startswith('data') and filename.endswith('.json'):
        # 提取文件名中的数字部分
        try:
            # 从"data"之后(索引4)到".json"之前(索引-5)的字符串转成整数
            num = int(filename[4:-5])
            file_numbers.append(num)
        except ValueError:
            # 如果文件名不符合dataX.json的格式(比如dataabc.json),直接跳过
            continue

# 确定下一个文件编号:如果已有文件就取最大编号+1,没有就从1开始
next_file_number = max(file_numbers) + 1 if file_numbers else 1
new_filename = f"data{next_file_number}.json"

# 步骤2:写入新文件
with open(new_filename, 'w') as f:
    # 写入首行的Infotext
    json.dump(Infotext, f)
    f.write("\n")
    # 写入你的Saving内容
    json.dump(Saving, f)
    f.write("\n")

# 如果需要写入多条Saving内容(比如循环生成的多个条目),可以改成这样:
# with open(new_filename, 'w') as f:
#     json.dump(Infotext, f)
#     f.write("\n")
#     # 假设你有一个保存所有Saving内容的列表
#     saving_list = [
#         "Hello World - helloworld@test.com",
#         "Hello2 World - helloworld2@test.com",
#         "Hello3 World - helloworld3@test.com"
#     ]
#     for item in saving_list:
#         json.dump(item, f)
#         f.write("\n")

关键细节说明

  • 编号逻辑:通过os.listdir遍历目录,筛选符合命名规则的文件,提取数字部分来确定下一个编号,避免重复或覆盖已有文件。
  • 文件写入:用'w'模式创建新文件(如果文件不存在会自动创建),先写入固定的首行文本,再写入你的业务内容,每写完一条就换行,保证格式和你期望的一致。
  • 异常处理:加入try-except捕获不符合格式的文件名,避免因为目录里的其他类似文件名(比如data_test.json)导致编号计算出错。

内容的提问来源于stack exchange,提问作者CDNthe2nd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:23:14