全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 527|回复: 9

[Windows VPS] 已解决-教python大佬,如何把“数组”与一个txt文档匹配数据

[复制链接]
发表于 2021-11-14 11:07:21 | 显示全部楼层 |阅读模式
本帖最后由 战神赵日天 于 2021-11-14 11:43 编辑

这是初学者小弟今天第二次发python请教贴,特别感谢 @Floppy @sRGB @Ausxilia 在上一个贴中给予小弟的指点和帮助https://hostloc.com/thread-917967-1-1.html

现在数组是提取出来了  s = ['aa','ab','ac','ad','ae','af']

想要看一下s数组在  x.txt这个文本中是否有匹配的数据
x.txt  可以是   ef,ki,ad,lo,yh,nm这种逗号隔开
x.txt  也可以是   
ef
ki
ad
lo
yh
nm
这种按行排序

只要查询到s数组有任何一个数据,比如ad在x.txt中出现
则返回ture,否则则flase

有没有吊大的mjj来讨论,指点小弟
发表于 2021-11-14 11:23:38 | 显示全部楼层
  1. def match_file(s, file_name):
  2.     with open(file_name, "r") as f:
  3.         t = re.split(r'[,\n]', f.read())
  4.         if any(i in t for i in s):
  5.             return True
  6.         return False
复制代码

点评

已经成功,不过我有个小修改t = f.read()  发表于 2021-11-14 11:42
发表于 2021-11-14 11:13:33 | 显示全部楼层
我用最简单粗暴的判断,就是
data= f.read()
if item in data

字符串可以直接查找是否在文件的字符串中存在
当然这个需要字符串的辨识度
发表于 2021-11-14 11:14:17 | 显示全部楼层
把txt读取出来就行了
 楼主| 发表于 2021-11-14 11:16:41 | 显示全部楼层
Ausxilia 发表于 2021-11-14 11:13
我用最简单粗暴的判断,就是
data= f.read()
if item in data

成功骗出大佬,恩,我试试
发表于 2021-11-14 11:25:16 | 显示全部楼层
感觉Python大佬很多啊,,,可以开个Python板块了
发表于 2021-11-14 11:31:34 | 显示全部楼层
看起来是多对多匹配的问题
 楼主| 发表于 2021-11-14 11:33:58 | 显示全部楼层

大佬这个更牛逼,给小弟添砖加瓦了,属于是
多谢多谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2026-5-11 13:41 , Processed in 0.066868 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表