Python使用pickle模块报错EOFError Ran out of input的解决方法

yipeiwu_com7年前Python基础

本文实例讲述了Python使用pickle模块报错EOFError Ran out of input的解决方法。分享给大家供大家参考,具体如下:

遇到了 EOFError:Ran out of input 不到为什么这样,最后用捕获异常的办法解决掉了,暂时对程序本身没有啥影响,代码如下:

# coding=utf-8
import pickle
def usr_date():
  try:
    with open('usr_date.pkl','rb') as f:
      return pickle.load(f)
  except EOFError: #捕获异常EOFError 后返回None
    return None
def update_usr(usr_dic):
  with open('usr_date.pkl','wb') as f:
     pickle.dump(usr_dic,f)
def register():
  '注册'
  usr_dic = {}
  usr_name = input('请输入用户名')
  open_date = usr_date() if usr_date() else {}
  if usr_name in open_date.keys():
    print('用户已存在,请登录')
    return False
  usr_password = input('请输入你的密码:')
  usr_dic[usr_name] = usr_password
  update_usr(usr_dic)
  return print('注册成功')
def Sign_in():
  '登录'
  pass
def login_index():
  while True:
    usr = input('1.注册 2.登录 0.退出')
    if usr == '1':
      register()
    elif usr =='2':
      Sign_in()
    else:
      break

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python进程与线程操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

浅谈python图片处理Image和skimage的区别

浅谈python图片处理Image和skimage的区别

做cnn的难免要做大量的图片处理。由于接手项目时间不长,且是新项目,前段时间写代码都很赶,现在稍微总结(恩,总结是个好习惯)。 1,首先安装python-Image和python-ski...

Python中文字符串截取问题

先来看个例子: #-*- coding:utf8 -*- s = u'中文截取' s.decode('utf8')[0:3].encode('utf8') # 结果u'中文截取...

Python 实现将数组/矩阵转换成Image类

Python 实现将数组/矩阵转换成Image类

先说明一下为什么要将数组转换成Image类。我处理的图像是FITS (Flexible Image Transport System)文件,是一种灰度图像文件,也就是单通道图像。 FIT...

在pycharm 中添加运行参数的操作方法

在pycharm 中添加运行参数的操作方法

最近又重新看手上的代码,之前弄不明白的地方这次要一次弄明白。 代码中出现了很多sys.arfv[]的运行参数,pycharm怎么添加运行参数呢 打开Run->Edit Config...

Python 单元测试(unittest)的使用小结

测试目录 项目的整体结构可以参考“软件目录开发规范”,这里单说测试目录。一般都是在项目里单独创建一个测试目录,目录名就是“tests”。 关于目录的位置,一种建议是,在项目名(假设项...