【问题标题】:Get Matched item from str(list)从 str(list) 中获取匹配项
【发布时间】:2017-03-01 12:57:58
【问题描述】:

我尝试四处搜索,也许我没有找到确切的方法来搜索网络或堆栈溢出来满足此要求。请重新指导我或为以下问题提供解决方案。

我有一个列表说(我的原始列表有超过 10k 个城市):

A = ['BANGALORE', 'DUBAI', 'SHANGHAI' , 'SOUTH ASIA' , 'NORTH ASIA']

现在我的要求是匹配这个列表,类似于 ORACLE 中的LIKE 运算符。我的意思是,如果我们输入 BAN ,它必须匹配 BANGALORE。我通过以下方式完成此操作:

if 'BAN'in  str(A) :
   Do my stuffs  

现在,如果我需要从 'BAN' 匹配的列表中检索该元素。我们该怎么做?

简单来说。

if 'BAN'in  str(A) :
   Display to me what is that A that matched 'BAN'. 

我四处寻找,但找不到解决方案

【问题讨论】:

  • 好吧,我需要 BAN 匹配的 A 值!我在列表中有超过 10k 个城市。我知道我正在匹配 BAN ,但我不知道匹配的 A 是什么。我想找到那个!
  • 同意,这就是我在帖子中的内容。我尝试了我的搜索方法,但可能因为我在搜索过程中使用的措辞而找不到!

标签: python python-2.7 list


【解决方案1】:
[city for city in A if 'BAN' in city]

这将为您提供包含“BAN”的每个城市的列表。您可以检查列表是否为空,然后打印它或获取第一个元素,或任何您想做的事情。

matching = [city for city in A if 'BAN' in city]
if matching:
  print 'There are ', len(matching), ' cities that contain BAN.'
  print 'For example: ', matching[0]

【讨论】:

  • 我会在接受这个答案之前尝试这个解决方案。非常感谢:)
猜你喜欢
  • 1970-01-01
  • 2019-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多