加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python使用来自另一个文件的输入搜索文件以查找文本

发布时间:2020-12-20 11:31:25 所属栏目:Python 来源:网络整理
导读:我是 python和编程的新手.我需要一些python脚本的帮助.有两个文件,每个文件包含电子邮件地址(超过5000行).输入文件包含我要在数据文件中搜索的电子邮件地址(也包含电子邮件地址).然后我想将输出打印到控制台上的文件或显示.我搜索脚本并能够修改,但我没有得
我是 python和编程的新手.我需要一些python脚本的帮助.有两个文件,每个文件包含电子邮件地址(超过5000行).输入文件包含我要在数据文件中搜索的电子邮件地址(也包含电子邮件地址).然后我想将输出打印到控制台上的文件或显示.我搜索脚本并能够修改,但我没有得到所需的结果.你能帮我么?

dfile1 (50K lines)
yyy@aaa.com
xxx@aaa.com
zzz@aaa.com


ifile1 (10K lines)
ccc@aaa.com
vvv@aaa.com
xxx@aaa.com
zzz@aaa.com

Output file
xxx@aaa.com
zzz@aaa.com



datafile = 'C:Python27scriptsdfile1.txt'
inputfile = 'C:Python27scriptsifile1.txt'

with open(inputfile,'r') as f:
names = f.readlines()

outputlist = []

with open(datafile,'r') as fd:
  for line in fd:
    name = fd.readline()
    if name[1:-1] in names:
        outputlist.append(line)
    else:
        print "Nothing found"
 print outputlist

新规范

with open(inputfile,'r') as f:
    names = f.readlines()
outputlist = []

with open(datafile,'r') as f:
    for line in f:
        name = f.readlines()
        if name in names:
            outputlist.append(line)
        else:
            print "Nothing found"
    print outputlist

解决方法

这就是我要做的事情:

names=[]
outputList=[]
with open(inputfile) as f:
    for line in f:
        names.append(line.rstrip("n")

myEmails=set(names)

with open(outputfile) as fd,open("emails.txt","w") as output:
    for line in fd:
        for name in names:
            c=line.rstrip("n")
            if name in myEmails:
                print name #for console
                output.write(name) #for writing to file

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读