这篇文章主要介绍python怎么对单个值测试多个变量,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
问题
正在尝试制作一个函数,它将多个变量与一个整数进行比较并输出一个由三个字母组成的字符串。我想知道是否有办法将其翻译成 Python。所以说:
x = 0y = 1z = 3mylist = [] if x or y or z == 0 : mylist.append("c")if x or y or z == 1 : mylist.append("d")if x or y or z == 2 : mylist.append("e")if x or y or z == 3 : mylist.append("f")
这将返回一个列表:
["c", "d", "f"]
这样的事情可能吗?
解决方法
误解了布尔表达式的工作原理;它们不像英语句子那样工作,并且猜测您在这里谈论的是所有名称的相同比较。您正在寻找:
if x == 1 or y == 1 or z == 1:
x并y以其他方式自行评估(False如果0,True否则)。
您可以使用针对元组的包含测试来缩短它:
if 1 in (x, y, z):
或者更好:
if 1 in {x, y, z}:
使用aset来利用恒定成本成员资格测试(即in,无论左侧操作数是什么,都需要固定的时间)。
以上是“python怎么对单个值测试多个变量”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!