【问题标题】:Display all resoult if text not cointaint strings from the list [duplicate]如果文本不包含列表中的字符串,则显示所有结果[重复]
【发布时间】:2022-01-05 20:43:01
【问题描述】:

看看这个例子

if ('.NET' or 'JS' or 'python' or 'Java') not in title:
    print(title)

这是我的代码的一部分。标题是一个字符串。我只想在不包含列表的任何一个元素的情况下显示标题。在此示例中,它仅排除 .NET。我该如何解决我的问题?

【问题讨论】:

  • ('.NET' or 'JS' or 'python' or 'Java')的值是多少?
  • 如果你尝试运行'.NET' or 'JS' or 'python' or 'Java',你会得到'.NET'
  • 我希望如果这个列表中只有一个元素包含在标题中,它不应该是打印的。
  • @RiccardoBucco 那么我该如何解决我的问题呢?

标签: python list if-statement


【解决方案1】:

你需要用这种方式重写你的语句:

if ('.NET' not in title and
    'JS' not in title and
    'python' not in title and
    'Java' not in title):

或者:

if all(x not in title for x in ('.NET', 'JS', 'python', 'Java')):

【讨论】:

  • ('.NET' or 'JS' or 'python' or 'Java') 仍解析为 '.NET'。请改用for x in ['.NET', 'JS', 'python', 'Java']
  • @JohnGordon 是的,对不起,我刚刚复制并粘贴了问题中的代码哈哈
猜你喜欢
  • 2020-11-03
  • 1970-01-01
  • 2022-08-02
  • 2022-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-05
  • 2021-12-31
相关资源
最近更新 更多