有效地将第一个限定符读入集合



我有一个文件,其中每行包含3个"字段";用管道标志隔开。所以每一行看起来像:

AA10SchedTbl|ddmmyy|comxxx.xxx.xxx|
AC01_systSchedTbl|ddmmyy|comxxx.xxx.xxx|
....

我需要创建一个包含每行第一个字段的集合我使用下面的代码,但我不认为这是最有效的方式,有什么建议吗?

with open(filename,"r") as file1:
refercycles = file1.readlines() 
reference=set()
for lines in refercycles:
line=lines.split('|')
x=line[0].strip()
reference.add(x)

算法没有问题。也许你可以应用一些(小的)优化:

with open(filename, "r") as file1:
reference = {line.split("|", 1)[0].strip() for line in file1}

使用集合推导式,并将str.split限制为每行单个拆分。

相关内容

最新更新