从列表中查找具有不同字符串格式的元素

时间:2017-05-17 10:56:26

标签: string python-2.7 list

我有一个包含元素的大型列表:

#1
#10
(on
)
0.0574
122-124
122A
Cat
Dog
elephant
elephant12
elephant-1

我想搜索并且只能找到以下内容:

Cat
Dog
elephant
elephant12
elephant-1

即。一开始就有英文字母的元素。

2 个答案:

答案 0 :(得分:1)

使用列表理解:

import string

result = [item for item in my_list if item[0] in string.ascii_letters]

正如@Jon评论的那样,检查字符是否只是一个字母:

result = [item for item in my_list if item[0].isalpha()]

当所有项目都是字符串时,上述工作正常,并且您希望具有领先英语字符的项目。根据需要更改if部分,如果过于复杂,甚至可以编写函数。

如果您正在寻找内存优化版本,请考虑generator

答案 1 :(得分:-1)

您可以使用动物清单。 例如:

list=["cat","dog","elephant","fish","bird", "snake"]

然后在输入中搜索任何字符串 我知道有更好的方法,但我会用

来做
def search(input):
  for item in list:
    if item in input:
      result.append(item)
  return result

然后你会添加案例无知精度。 如果您想要与动物名称相关联的数字,则需要附加输入。在这种情况下,请重复输入。

当然,如果需要,您的列表可以采用数据库的维度,例如搜索所有可能的现有单词。