首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查变量是否存在于多个列表中?

如何检查变量是否存在于多个列表中?
EN

Stack Overflow用户
提问于 2016-11-15 23:11:54
回答 5查看 1.5K关注 0票数 3

这是我代码的摘录!

代码语言:javascript
复制
division = ["Division","Divide","/","div"]
multiplication =["*","x","times","multiply","multiplication","multiple"]
subtraction = ["-",'minus','subtract','subtraction']
addition = ['+','plus','addition','add']
root = ['root','squareroot','square root']
square = ['square','squared','power 2']

choice = input('calculation type')
print(choice == (division or multiplication or subtraction or addition))

到目前为止,它只给出“假”。如何检查变量是否存在于多个列表中?我试着在名单里列清单,但我还是觉得“假”,这是代码.

代码语言:javascript
复制
division = ["Division","Divide","/","div"]
multiplication = ["*","x","times","multiply","multiplication","multiple"]
subtraction = ["-",'minus','subtract','subtraction']
addition = ['+','plus','addition','add']
root = ['root','squareroot','square root']
square = ['square','squared','power 2']
basic_double = [division,multiplication,subtraction,addition]
basic_single = [root,square]
choice = input('calculation type')
print(choice == basic_double or basic_single)

如有任何帮助,将不胜感激!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-11-15 23:15:04

测试choice是否在列表的any中:

代码语言:javascript
复制
any(choice in ls for ls in [division, multiplication, subtraction, addition])

如果给定可迭代的元素中至少有一个是真实的,则any返回True。

choice in ls测试选择是否是列表中的一个元素。

choice in ls for ls in [division, multiplication, subtraction, addition]是一个生成器理解,这意味着它是一个迭代器,它返回choice in ls对于[division, multiplication, subtraction, addition]中任何可能的ls的结果。

如果其中一个列表包含choice,则any将返回True,否则返回False。

票数 3
EN

Stack Overflow用户

发布于 2016-11-15 23:19:14

您可以使用itertools.chain()在所有列表中检查选择如下:

代码语言:javascript
复制
if choice in chain(division, multiplication, subtraction, addition):
票数 3
EN

Stack Overflow用户

发布于 2016-11-15 23:16:02

现在,您正在将字符串、选择与一系列列表进行比较。当您比较两种不同的数据类型时,这永远不会是真的。

您应该使用"in“关键字对每个列表进行检查。

代码语言:javascript
复制
if choice in division:
     #this returns true if the String set to choice is in the list of objects in division.
else if choice in multiplication:
.
.
.

这种比较将帮助您在列表中找到要查找的单词。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40621370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档