gpt4 book ai didi

python - 如何查看账户是否已保存?

转载 作者:太空宇宙 更新时间:2023-11-03 17:20:00 25 4
gpt4 key购买 nike

我正在尝试让程序搜索用户是否已创建帐户。

print'\n'
search = raw_input("For which account are you searching: ")
f = shelve.open("passwords.dat")
passwrd = f[search]
entry = passwrd[0]
f.close()
for line in passwrd:
if search in line:
print line
print '\n'
print "I'm sorry we could not find any account related to " + search
print'\n'

这是我尝试过的方法,每次我使用尚未创建的帐户运行它时,都会出现此错误

File "E:\password.py", line 35, in find_account
for line in f[search]:
File "C:\Python24\lib\shelve.py", line 118, in __getitem__
f = StringIO(self.dict[key])
File "C:\Python24\lib\bsddb\__init__.py", line 219, in __getitem__
return self.db[key]
KeyError: 'f'

如何检查它并且不会出现错误,这样我的程序就不会结束?

最佳答案

您发布的代码与错误报告的代码不同。我假设您刚刚将 for line in f[search]: 更改为 for line in passwrd:。在这种情况下,您需要首先检查文件中是否有可用的搜索。您可以将其放在第一位:

if search in f:
for line in f[search]:
...

或者给它一个空的默认值:

for line in f.get(search, []):
...

关于python - 如何查看账户是否已保存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33268274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com