python - 在列表元素的选定部分中查找子字符串
问题描述
我有下面的字符串列表(list1),我想查找strb
是否存在于list1中小数点之前元素左侧部分的任何位置。
我尝试了下面的代码,但它找到了找到 str b 的所有元素。
list1= ['4.39', '5.25', '2.29', '3.16', '4.19', '1.5', '4.17', '2.18', '5.18', '4.18', '5.16', '4.4']
b=str(1)
print([s for s in list1 if b in s])
它返回以下内容:
['3.16', '4.19', '1.5', '4.17', '2.18', '5.18', '4.18', '5.16']
但是,我只想得到,1.5
因为这是字符串 b 与小数点前左侧部分匹配的唯一元素。记住元素是字符串格式的。有什么快速检查这个东西的方法吗?
解决方案
您需要拆分每个字符串.
并提取第一个拆分:
print([s for s in list1 if '1' in s.split('.')[0]])
['1.5']
要进行精确匹配,请使用==
:
print([s for s in list1 if s.split('.')[0] == '1'])
['1.5']
推荐阅读
- php - WordPress 将自定义列添加到自定义帖子类型
- php - 警告:mysqli_num_rows() 期望参数 1 为 mysqli_result,bool 给定...我该怎么办?
- django - 在 Django 中自动为管理员创建令牌
- string - 连接几个字符串
- spring - REST API 设计 - 可选请求参数
- javascript - 使用节点 js 和反应 js 的文件加载问题
- java - 如何在spring boot中验证具有特定角色的用户?
- javascript - 在使用 pupeeteer 和 nodejs 抓取网页期间选择子元素
- python - 通过 SSH 隧道连接到数据库时,PyGreSQL/pg 挂起
- java - java compile dependency - 这个文件会被重新编译吗?