我有这样一个初始代码:
record = "Jane,Doe,25/02/2002;
James,Poe,19/03/1998;
Max,Soe,16/12/2001
..."
我需要把它编入字典,它的输出应该是这样的:
{'First name': 'Jane', 'Last name': 'Doe', 'Birthday': '25/02/2002'}
{'First name': 'James', 'Last name': 'Poe', 'Birthday': '19/03/1998'}
...
每行应该有一个从1开始的递增键
我目前还不知道如何处理这个问题,因为我还是一个没有经验的学生
我见过有人用它来表示包含键值对的字符串,但我的字符串不包含这些键值对:
mydict = dict((k.strip(), v.strip()) for k,v in
(item.split('-') for item in record.split(',')))
要为一行生成所需的字典,可以使用
split
在有逗号(',')的行上切分,以获取字典的值,并对键进行硬编码。例如现在要重复记录中的每一行,需要一个所有行的列表。同样,在本例中,您可以使用
split
在有分号(“;”)的地方切碎输入。例如现在,您可以在这个
lines
列表上迭代一行的解决方案,将结果收集到另一个列表中您提到的增量键要求似乎很奇怪,因为您可以将它们保存在一个列表中,其中列表中的索引实际上就是键。但是,当然,如果你真的需要索引字典的东西,你可以使用字典理解来做到这一点
最后,通过使用列表和字典理解的组合,以及预期键的列表,整个过程可能会变得更简洁(在我看来也更好)
使用可选的索引字典:
这应该适用于您的情况:
使用^{} :
相关问题 更多 >
编程相关推荐