搜索列表时删除区分大小写

时间:2014-04-23 16:55:24

标签: python

我创建了一个库和一个搜索界面。仅当第一个字母为大写时,它才会返回结果,因为我的所有数据都以大写字母开头。有没有一种搜索方法,但删除区分大小写。我需要它在返回时不改变数据。

我能想到的唯一方法是将第一个字母改为大写,但它看起来很麻烦。

由于

更新:我正在尝试做的简化版

data = 'The Works of William Shakespeare'
key = 'The'
if key in data:
    print "Match Found"
Match Found

key = 'the'
if key in data:
    print "Match Found"

在第二次尝试中找不到钥匙。有没有办法自动更改数据字符串的大小写和输入键的大小写?

2 个答案:

答案 0 :(得分:0)

为您正在搜索的文字的低版本版本保留一个单独的字段,然后比较搜索查询的低版本。

答案 1 :(得分:0)

规范化您要搜索的密钥。因此,如果它是小写的,请使用title()将其转换为大写(或者在您的情况下,初始上限):

key = 'the'
if key.title() in 'The Haystack I Need to Search':
    print('Found')
else:
    print('Did not find {}'.format(key))