是否有内置或Pythonic方式来执行此操作?或许我的问题应该是:在这个问题的最后是否有更好的方法来编写字典理解示例?
def split_list(list, index):
return list[:index], list[index:]
我发现自己需要在列表推导中执行此操作,我从某些生成器获取列表并希望将列表拆分为两部分。例如,文本文件如下:
txt_file = """key1 value value value value
key2 value value value value
"""
import io
{k:v
for line in io.StringIO(txt_file)
for items in (line.strip().split(),)
for k, v in ((items[0], items[1:]),)}
输出:
{'key1': ['value', 'value', 'value', 'value'],
'key2': ['value', 'value', 'value', 'value']}
答案 0 :(得分:1)
我唯一的评论是,你理解的最后for
没有真正的理由。
{items[0]:items[1:]
for line in io.StringIO(txt_file)
for items in (line.strip().split(),)}
我不知道"更好"将列表分成两部分的方法。