我想从具有以下结构的文件自动形成dictionary
。你知道吗
str11 str12 str13
str21 str22
str31 str32 str33 str34
...
也就是说,每行有两个、三个或四个字符串,中间有空格。我想在此列表中构建的词典必须具有以下结构:
{str11:(str12,str13),str21:(str22),str31:(str32,str33,str34), ... }
(也就是说,所有的条目str*1
都是键——它们都是不同的——剩下的就是values
)。我能用什么?你知道吗
Tags:
为了简单起见,使用
StringIO
实例:一行就行了:
注意
line.split(None, 1)
。这将拆分限制为一个项目,因为在dict理解中必须使用.split()
两次。我们不能像在循环中那样存储中间结果以供重用。None
表示在任何空格处拆分。你知道吗对于
OrderedDict
,您还可以使用生成器表达式避开一行:如果要保留项目的顺序,请考虑使用^{} :
相关问题 更多 >
编程相关推荐