如何使用python

时间:2018-09-06 06:34:40

标签: python

我有一个读取列表的函数。它将遍历列表并将其用作函数输入。它读取仅包含2行的文本文件。

  

LC1
  LC2

import re

def dict(input):
    for line in file:
        if re.search(input,line):
            print(input)
            d[input]=None
        else:
            print(d)
            break




file = open("Text.txt",'r')
d={}
kw=['LC1','LC2']
for input in kw:
    dict(input)

当它输入 LC2 时,功能立即中断,我不确定为什么。最终目标是要拥有一个像这样的字典

  

d = {LC1:None,LC2:None}

1 个答案:

答案 0 :(得分:0)

简单的方法:

def todict(vals,file):
    d={}
    for line in file:
        if line.rstrip() in vals:
            d[line.rstrip()]=None

    return d

file = open("Text.txt",'r')
print(todict(['LC1','LC2'],file))

但最简单的方法仍然是:

def todict(vals,file):
    return {}.fromkeys([i.rstrip() for i in file if i.rstrip() in vals])

file = open("Text.txt",'r')
print(todict(['LC1','LC2'],file))

两者均重现:

{'LC1': None, 'LC2': None}