[英]create a dict for items of two list once co occur in the same line in a file text
如果有两个项目列表,并且任务是创建两个列表中的项目的字典(一旦列表中的两个项目同时出现在文件的同一行中,则该列表中的一个项目作为键,而列表2中的一个作为值)文本。 与我接下来的审判有别的不同吗? 谢谢
di = {}
for line in file_text:
for x in list1:
for y in list2:
if x in line and y in line:
di[x]=y
为了获得最佳性能,您应该将itertools.izip
与Python的dict理解语法一起使用:
import itertools
di = {k: v for line in file_text for k, v in itertools.izip(list1, list2) if k in line and v in line}
一个字典理解是一个更快的替代方案来创建你的字典比嵌套for
循环和itertools.izip
是内存消耗比简单更经济的zip
(特别是较大的列表)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.