遇到问题如何使用 if 语句来确定某物是不是在列表中。 Python [重复]
Posted
技术标签:
【中文标题】遇到问题如何使用 if 语句来确定某物是不是在列表中。 Python [重复]【英文标题】:Having problems how to use an if statement to determine if something is in a list or not. Python [duplicate]遇到问题如何使用 if 语句来确定某物是否在列表中。 Python [重复] 【发布时间】:2017-12-23 20:08:18 【问题描述】:我正在编写一个程序,它接受一个空白输入并用它做各种事情。输入“show me contact _____”(用某人的名字填写____)。名称存储在列表中,我需要它能够检查名称是否在列表中,如果是,则打印联系信息。我认为 if 语句是最好的方法,但我不知道怎么做。
编辑:我曾尝试使用 in,但我的问题是输入包含“显示联系方式 _____”而不仅仅是名称。这会导致:
names = ['john doe','john doe','john doe']
user_input = input('>')
if user_input in names:
print(email)
不工作。
【问题讨论】:
if user_input in names:
;)
if user_input ==
?
在处理用户输入时,你可能还想清理一下:user_input = input('...').strip().lower()
【参考方案1】:
你想要
if user_input in names:
当与列表一起使用时,in
检查成员资格。当与字符串一起使用时,它将检查子字符串。
【讨论】:
或者更好的是,if user_input in set(names):
。应事先进行设置以使其有意义。
A set
仅在您计划执行多个查询或者您可以直接将其初始化为集合 (names = 'john doe','john doe','john doe'
) 时(真正)有用。以上是关于遇到问题如何使用 if 语句来确定某物是不是在列表中。 Python [重复]的主要内容,如果未能解决你的问题,请参考以下文章
python - 如何在python中使用IF语句检查两个列表的元素是不是相等?
SQL如何根据该集合的单个值是不是等于某物来过滤出整个值集?