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

如何通过用户输入将用户信息永久存储到Python字典中?

实现用户信息永久存储

要解决重启脚本后新用户数据丢失的问题,核心是把内存中的字典数据持久化到磁盘文件里。推荐使用JSON格式存储,它天然适配Python字典的键值对结构,读写操作简单且易维护。

修改后的完整代码

import json

# 定义存储用户数据的文件路径
USER_FILE = "users.json"

def load_users():
    """从JSON文件加载用户数据,文件不存在则返回初始用户字典"""
    try:
        with open(USER_FILE, "r", encoding="utf-8") as f:
            return json.load(f)
    except FileNotFoundError:
        # 文件不存在时返回预设的初始用户
        return {
            "Hi": "HM123",
            "alan": "12122",
            "12": "11"
        }

def save_users(users):
    """将用户数据写入JSON文件"""
    with open(USER_FILE, "w", encoding="utf-8") as f:
        json.dump(users, f, indent=4, ensure_ascii=False)

def adder():
    users = load_users()  # 先加载已存储的用户数据
    new_user = input("Please enter user's name: ").strip()
    new_pwd = ""
    confirmer = "0"
    while new_pwd != confirmer:
        new_pwd = input("please enter a new Password: ").strip()
        confirmer = input("please confirm your password: ").strip()
        if new_pwd != confirmer:
            print("passwords does not match!!")
    users[new_user] = new_pwd
    save_users(users)  # 添加用户后立即保存到文件
    print("User added successfully!")

adder()

关键逻辑说明

  • 加载数据:启动脚本时通过load_users()读取本地JSON文件,若文件不存在则使用预设的初始用户字典,确保每次启动都能获取最新的用户数据。
  • 保存数据:新增用户后调用save_users()将整个用户字典写入文件,把内存中的修改同步到磁盘,实现数据持久化。
  • JSON格式优势:可读性强,方便手动查看或调整用户数据(如需),同时Python的json模块可直接完成字典与JSON文件的格式转换。

运行脚本后,当前目录会生成users.json文件,所有新增用户都会保存在该文件中,重启脚本后数据不会丢失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 06:05:49