[Error]Python 判断字符串是否存在列表项的某一个字符串中
lines = ['姓名1:已戴头盔 已戴安全带\n', '姓名2:已戴头盔 已戴安全带\n', '姓名3:已戴头盔 已戴安全带\n', '姓名4:已戴头盔 已戴安全带\n']
request = '姓名3'
if request in lines:
print(True)
else:
print(False)
直接拿字符串判断是否在列表中 if request in line:会输出False
因为此判断会检查列表中是否存在’姓名3’ ,但它是’姓名3:已戴头盔 已戴安全带\n’,因此’姓名3’不存在。
- 法一
我们只需要修改一下判断语句,将列表定义为字符串形式,让其判断字符是否在字符串中即可
lines = ['姓名1:已戴头盔 已戴安全带\n', '姓名2:已戴头盔 已戴安全带\n', '姓名3:已戴头盔 已戴安全带\n', '姓名4:已戴头盔 已戴安全带\n']
request = '姓名3'
if request in str(lines):
print(True)
else:
print(False)
True
- 法2
any('姓名3' in item for item in lines)