使用此链接上显示的堆栈溢出的答案:https://stackoverflow.com/a/4804039,我试图将文件内容读入字典中。有一个错误,我似乎无法修复。将文本文件中的登录数据读入字典错误
代码
def login():
print("====Login====")
userinfo={}
with open("userinfo.txt","r") as f:
for line in f:
(key,val)=line.split()
userinfo[key]=val
print(userinfo)
文件内容
{'user1': 'pass'}
{'user2': 'foo'}
{'user3': 'boo'}
错误:
(key,val)=line.split()
ValueError: not enough values to unpack (expected 2, got 0)
我有一个问题,我非常感谢两倍的答案
什么是文件内容读最好的和最有效的方式,如图所示,进入字典,并指出,它已经被存储在字典格式。
有没有一种方法来写入字典,使“阅读”更容易?我在第一个地方写userinfo.txt文件代码如下所示
编写代码
with open("userinfo.txt","a",newline="")as fo:
writer=csv.writer(fo)
writer.writerow([{username:password}])
可以在任何的答案,请尝试以下
使用原始代码提供错误的解决方案
建议最好的方法来做同样的事情(最简单的教学目的)注意,我不希望使用pickle,json或非常基本的文件处理以外的任何东西(所以只能从文本文件或csv阅读器/写作工具)。例如,是否最好将文件内容读入列表中,然后将列表转换为字典?或者还有其他方法吗?
是否有一种使用csv阅读器或其他基本txt文件处理方式将字典写入文本文件的方法,以便可以在另一端更有效地将文件内容读入字典。
更新:
空白线去除,并且代码的工作,但产生错误的输出:
{"{"Vjr':": "'open123'}", "{'mvj':": "'mvv123'}"}
我想我需要理解的分裂和条命令以及如何在此上下文中使用它们以产生期望的结果(将内容读入字典用户信息)
Thank you -yes。Blank line removed。and now following:{“{'benjr' :“:”'open123'}“,”{'marvj':“:”'marv123'}“} W虐待更新的问题包括这一点。我仍然是将文件内容写入/读入字典的最佳方式。我最初的想法是写作一个列表,并使用我给出的链接上显示的代码作为字典阅读。我确信虽然有更简单的方法...再次感谢您 – MissComputing