当前位置: 首页 > 面试题库 >

如何检查字符串是否包含Python中列表中的元素

慕河
2023-03-14
问题内容

我有这样的事情:

extensionsToCheck = ['.pdf', '.doc', '.xls']

for extension in extensionsToCheck:
    if extension in url_string:
        print(url_string)

我想知道在Python中(不使用for循环)更优雅的方法是什么?我在想这样的事情(例如从C / C ++开始),但是没有用:

if ('.pdf' or '.doc' or '.xls') in url_string:
    print(url_string)

编辑:我有点被迫解释这与下面被标记为潜在重复项的问题有何不同(所以我想它不会关闭)。

区别是,我想检查一个字符串是否是某些字符串列表的一部分,而另一个问题是检查字符串列表中的字符串是否是另一个字符串的子字符串。
相似,但不完全相同,在网上寻求答案时,语义很重要。这两个问题实际上是在寻求解决彼此相反的问题。两者的解决方案却是相同的。


问题答案:

与一起使用发电机any,它会在第一个True上短路:

if any(ext in url_string for ext in extensionsToCheck):
    print(url_string)

编辑:
我看到这个答案已被OP接受。尽管我的解决方案可能是解决其特定问题的“足够好”的解决方案,并且是检查列表中是否有其他字符串的通用方法,但是请记住,这就是该解决方案的全部工作。
不管在哪里找到字符串,例如在字符串的末尾 。如果这很重要(通常是使用url的情况),则应查看@Wladimir
Palant的答案,否则您可能会得到误报。



 类似资料:
  • 问题内容: 如何检查字符串中是否包含字符列表,例如“ ABCDEFGH”,如何检查字符串中是否有字符列表。 问题答案: 在Java中使用正则表达式检查在Java中使用 正则表达式 例如:

  • 下面是我要做的:我有一些,如果列表包含特定字符串,我想打印一条语句,否则抛出一个异常,但当我尝试以下代码时 它遍历列表,在处,它显然找到“apple”,并立即转到块并抛出异常。我也试过下面的,但这也不起作用。 有没有一个简单的方法来做我想做的事情?

  • 我们如何在字符串列表中找到字母或特殊字符?我有一张单子,想看看里面有没有特别的字母。我试着去做,但出了一个错误。 代码: 获取错误: 我们不应该使用吗?或者,如果一个字符串有特殊的字母或特殊的字符,我们应该找到什么?

  • 问题内容: 我想检查我的字符串是否包含+字符。我尝试了以下代码 但是它没有给出预期的结果。 问题答案: 您需要此: 类的方法不使用正则表达式作为参数,而是使用普通文本。 编辑: 输出:

  • 在寻找这个问题的答案时,我也遇到过类似的利用LINQ的方法,但是我还不能完全理解它们(并因此实现它们),因为我对它还不熟悉。基本上,我想说的是: 检查列表的任何元素是否包含特定字符串。 如果是,则获取该元素。 老实说,我不知道该如何着手做那件事。我能想出的是这个(当然不工作): 我知道为什么它不起作用: 不返回,因为它将检查列表的整个元素是否与我指定的字符串匹配 不会找到匹配项,因为它将再次检查与

  • 在python中,如何检查字符串是否是字符串列表中的元素? 我正在处理的示例数据是: 那么为什么下面代码的结果是"False":