本文實例講述了Python使用pickle模塊報錯EOFError Ran out of input的解決方法。分享給大家供大家參考,具體如下:
遇到了 EOFError:Ran out of input 不到為什么這樣,最后用捕獲異常的辦法解決掉了,暫時對程序本身沒有啥影響,代碼如下:
# coding=utf-8import pickledef usr_date():  try:    with open('usr_date.pkl','rb') as f:      return pickle.load(f)  except EOFError: #捕獲異常EOFError 后返回None    return Nonedef 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():  '登錄'  passdef login_index():  while True:    usr = input('1.注冊 2.登錄 0.退出')    if usr == '1':      register()    elif usr =='2':      Sign_in()    else:      break希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答