python - 如何使用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:无}
解决方案
简单的方法:
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}
推荐阅读
- php - 为什么 UPDATE 准备语句上的 PDO::fetchAll() 会导致“无缓冲查询处于活动状态”异常?
- javascript - 在动态创建的 ID 上触发点击事件(ID 基于父元素)
- echarts - 如何将动态数据应用到echarts中的饼图上?
- laravel - 跟踪 302 重定向 (/app) 到应用商店的获取渠道
- python - 存在索引时 Pandas 数据框索引错误
- html - 如何在菜单中垂直居中登录按钮
- ionic-framework - 找不到模块'@angular-devkit/build-angular/src/webpack/utils/helpers'
- python-3.x - 使用 matplotlib 和 pandas 不显示绘图
- discord.js - discord.js 发现返回未定义
- c# - c#发布的win表单应用程序源代码别人可读吗?