| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2829 人关注过本帖
标题:Python 文件保存异常
取消只看楼主 加入收藏
星星对你眨眼
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2019-4-21
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
Python 文件保存异常
程序代码:
print("|---欢迎进入通讯录程序---|")
print("|---1:查询联系人资料 ---|")
print("|---2:插入新的联系人 ---|")
print("|---3:删除已有联系人 ---|")
print("|---4:查看通讯录信息 ---|")
print("|---5:退出通讯录程序 ---|")
try:
    file=open("Data.pyab","a+")
    dict=eval(file.readline())
except:
    file=open("Data.pyab","w")
    dict={}
while(1):
    n=input("请输入相关的指令代码:")
    if(n=='1'):
        key=input("请输入联系人姓名:")
        if key in dict:
            print(key+":"+dict[key])
        else:
            print("无此联系人!")
    elif(n=='2'):
        key=input("请输入联系人姓名:")
        if(key in dict):
            print("您输入的姓名在通讯录中已存在"+"-->>"+key+":"+dict[key])
            lis=input("是否修改用户资料(yes/no):")
            if iis=="yes":
                value=input("请输入用户联系电话:")
                dict[key]=value
        else:
            value=input("请输入联系人电话:")
            dict[key]=value
    elif(n=='3'):
        key=input("请输入联系人姓名:")
        del dict[key]
        print("已删除"+key)
    elif(n=='5'):
        print("|---感谢使用通讯录程序---|")
        strdict=str(dict)
        print(strdict)
        input("")
        file.truncate()
        file.seek(0)
        file.write(strdict)
        file.close
        break

问题:
每次打开程序时,例如输入
小明 110
小红 119
退出程序后,Data.pyab内容:
{"小明":"110","小红":"119"}
没有错误.
但如果再次打开程序,输入
小黄 119
那么退出程序后,Data.pyab的内容就变成了只有
{"小黄":"119"}
之前输入的内容就会不见
搜索更多相关主题的帖子: dict 输入 key 联系人 print 
2019-10-10 23:06
星星对你眨眼
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2019-4-21
收藏
得分:0 
open("Data.pyab","a+")不是追加模式吗?
2019-10-11 12:24
星星对你眨眼
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2019-4-21
收藏
得分:0 
谢谢两位,问题已解决
2019-10-11 20:35
快速回复:Python 文件保存异常
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018366 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved