【问题标题】:search multiple strings in multiple strings在多个字符串中搜索多个字符串
【发布时间】:2019-06-14 22:54:15
【问题描述】:

我想搜索“bit”或“yit”是否在我已解析和拆分的一行的单词中。此外,在同一行但不同的单词中,我想查找“If”或“yup”。

整个代码应该在一行中。

line=line.split()
if ('bit' or 'yit') in line[0] or ('If' or 'yup') in line[-2] : 

当我使用这段代码时它不会执行。

这是我的输入:

"bit2_2" -> 25;
"yup" -> "end4";
"yit" -> "yup69";
 25 -> 56;

【问题讨论】:

  • 你为什么不包括你的输入类型
  • 每个条件都应该分开:if ('bit' in line[0]) or ('yit' in line[0]) or ('If' in line[-2]) or ('yup' in line[-2]).
  • 这是因为例如('bit' or 'yit'),计算结果为True,即bityit 都不是假的。
  • 我分享了我的输入 BlueRine

标签: python string python-2.7 if-statement


【解决方案1】:

or 运算符使用了错误的形式,您在 in 之前比较了 str or str

你需要了解operator precedence

关于您的问题,您可以使用any built in function python

【讨论】:

    【解决方案2】:

    这对你有用吗?

    line=line.split()
    if 'bit' in line[0] or 'yit' in line[0] or 'If' in line[-2] or 'yup' in line[-2] : 
    

    【讨论】:

    • 是的。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2012-10-15
    • 2020-06-25
    • 2021-01-16
    • 2011-11-20
    • 1970-01-01
    • 2011-04-28
    相关资源
    最近更新 更多