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

Python程序更新Cities文件中tickets字典时被清空的问题求助

问题原因

每次运行程序时,Cities模块里的tickets字典都会被重新执行初始化代码(tickets = {}),你对字典的修改仅存在于当前程序运行的内存中,程序结束后所有内存中的修改都会丢失,下次启动自然又回到空字典状态。

解决方案

要实现字典的持久化更新,需要把数据保存到文件里,每次运行时先读取文件中的已有数据,更新后再写回文件。这里用json模块举例(兼容性好,数据可读):

主程序代码修改

import random
import json

# 读取已有数据,文件不存在则初始化空字典
try:
    with open('tickets_storage.json', 'r', encoding='utf-8') as f:
        tickets = json.load(f)
except FileNotFoundError:
    tickets = {}

# 添加新的键值对
new_entry = {random.randint(1, 999): random.randint(1, 89898)}
tickets.update(new_entry)

# 将更新后的字典写入文件
with open('tickets_storage.json', 'w', encoding='utf-8') as f:
    json.dump(tickets, f, indent=2)

print(tickets)

补充说明

  • 运行程序时,会自动读取tickets_storage.json里的历史数据,添加新内容后再保存回去
  • 如果你不再需要Cities模块里的tickets变量,可以直接删除该模块内的tickets = {}定义

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 12:48:34