python - 与字符串列表python的精确字符串匹配和比较
问题描述
我想要的是比较一个字符串并检查它是否存在于字符串列表中。例如
'mild proliferative retinopathy'=='diabetic retinopathy' or 'moderate non proliferative retinopathy' or 'mild nonproliferative retinopathy'
我想要完全匹配的不是部分。如果完全匹配,则返回 True,而不是 False。
以下实现在部分匹配时返回 True。我需要精确匹配
any('diabetic' in s for s in ['diabetic retinopathy' , 'moderate non proliferative retinopathy' ,'mild nonproliferative retinopathy'])
我尝试的另一个实现
'retinopathy' in str(['diabetic retinopathy' , 'moderate non proliferative retinopathy' ,'mild nonproliferative retinopathy'])
这也会在部分匹配时返回 True
解决方案
而不是使用in
,使用==
:
any('diabetic' == s for s in ['diabetic retinopathy' , 'moderate non proliferative retinopathy' ,'mild nonproliferative retinopathy'])
这是因为in
检查您string
是否存在于string
您与之进行比较的任何地方。==
检查两个字符串是否相等。
推荐阅读
- api - 如何刷新计算属性
- python - 是否可以使用 pyglet 同时更新所有 GL_QUADS 的相同值的纹理坐标?
- vuejs2 - Vue js从多个复选框中获取复选框的选中值
- arrays - 提供 UICollectionView 数据源的多个数组
- python - 使用python发送电子邮件时出现超时错误
- c - 无明显原因的变量被覆盖
- confluent-schema-registry - 如何从具有特定 ID 的融合模式注册表中删除模式?
- powerbi - 如何在主表中添加计算列,该列将从 dax 中的另一个表计算总和
- java - 将“.wav”文件读入java android作为“.tflite”模型的输入文件
- c++ - 在 C++11 上下文中使用 std::optional