条件如下:手头有两个文件:
其中一个excel文件有id和id信息,每个都是独立的;
另一个是一个txt格式文件,每两行为一个单独的数据,分别是位于第一行数据名和第二行序列名,其中excel文件中的id信息会包含在序列名中。
我需要利用excel文件中的id信息去匹配txt文件中的包含id信息的序列名,之后把匹配到的数据名提取并打印。
能想到的办法是用re包。
代码如下:
import re
target = open(”txt文件所在的地址“, "r")
finder = open("excel文件所在的地址", "r")
result=re.compile(finder).findall(target)
print(result)
给我的报错是
first argument must be string or compiled pattern
我不知道这样做是否正确,或者还有别的好方法。
请各位大神出出主意,本人工作一般不用python,实在不知道还有没有别的包或者方法可以解决问题。
(由于数据量比较大且两个文件格式不相同,所以没有办法将txt文件转换成excel文件)
python正则的定义和其他不太一样
re.complie('正则表达式').findall('原始字符串')
你的finder是一个文件信息,不能作为正则表达式使用
根据你的描述,你应该用excel或excel数据库方式打开你的excel文件,然后读取其中的id信息,然后根据id信息组成正则表达式来匹配文本文件中的内容
先参考下这个文章https://blog.csdn.net/liyuanjinglyj/article/details/87895700
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m