首页 > 解决方案 > 如何使用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:无,LC2:无}

标签: python

解决方案


简单的方法:

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}

推荐阅读