检查条目是否在列表中,无论它是大写还是小写:python

时间:2016-11-20 04:15:30

标签: python string list methods

我试图根据用户输入检查条目是否在列表中,无论输入是大写还是小写字母的组合。说我有电视节目名称' Stranger Things'在我的清单中。我想打印' Stranger Things'即使用户输入了',' St' ST' ST'或' s',也可以从列表中进行输入。

我认为我应该输入.lower(),但这是否意味着我必须使用.lower()转换列表中的所有字符串?如果是这样,我如何使用列表中的大量数据来执行此操作?

1 个答案:

答案 0 :(得分:0)

您可以将列表转换为所有小写字词,也可以执行以下操作:

shows = ['Stranger Things', 'The Office', 'Show 3', 'etc']
if word in map(shows, str.lower):
    {do something}

如果您需要同时保留“正确”版本(例如“Stranger Things”)以及全小写版本,则可以创建字典并将小写版本存储为键,将大写版本存储为值。通过这种方式,您可以查看该节目是否在shows字典中,并获得“正确”版本。这方面的一个例子是:

shows = {"stranger things": "Stranger Things", "the office": "The Office", "show 3": "Show 3"}
if word in shows.keys():
    print(shows[word])  # prints the proper version of the word