【问题标题】:if (str) in (list) error with pickle loadif (str) in (list) error with pickle load
【发布时间】:2018-04-18 11:34:37
【问题描述】:

我是新手,我相信这个问题已经回答了一千次了。 这只是代码构成问题的一部分。

import pickle
userList = ["user1"]

try:
    with open("userList.pkl", "rb") as liste:
        userList = pickle.load(liste)

except:
    with open("userList.pkl", "wb") as liste:
        pickle.dump(userList, liste)

utilisateur = input("Utilisateur: ")
if utilisateur in userList:
    print("in list")

else:
    print("not in list")
    #add in list

当我输入user1时它返回not in list...

【问题讨论】:

  • 我们可以看看序列化的userList的内容吗?
  • 您在从文件加载时覆盖userList,您确定该文件有user1吗?

标签: python list input try-catch pickle


【解决方案1】:

我认为您的问题是您在这一行中覆盖了 userList :

userList = pickle.load(liste)

检查您从中加载的文件中是否包含 user1。

【讨论】:

  • 问题不在我搜索的地方,谢谢!我第一次运行程序时,它按预期创建了 pkl 文件,但它不包含我想要的内容,然后当我重新运行程序时,它加载了它并覆盖了列表!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-02
  • 2021-07-13
相关资源
最近更新 更多