如果列表中的所有值都是 40,则 Python 返回成功 [重复]
Posted
技术标签:
【中文标题】如果列表中的所有值都是 40,则 Python 返回成功 [重复]【英文标题】:Python return success if all values in the list are 40 [duplicate] 【发布时间】:2021-07-20 21:18:13 【问题描述】:我有一个列表,其中包含如下内容:
lst = [40, 40, 40, 40]
我只想在列表中的所有值都是 40 时打印成功,否则失败。我该怎么做?
到目前为止我尝试了什么?
if(len(set(lst))==1)
print("Success")
else:
print("Failure")
这会打印成功,但如果列表中的所有值都是 [1,1,1,1],它也会打印成功。
【问题讨论】:
这能回答你的问题吗? How to check if all elements of a list match a condition?,或者将您的条件更改为:len(set(lst))==1 and lst[0] == 40
(即检查只有 1 个唯一值,该值是 40)
set(lst)==40
也是Check if list contains only item x的更接近的副本
【参考方案1】:
您可以使用内置函数all()
来检查每个元素。并且使用python的三元if else
你可以把它变成一个衬里
print('Success' if all(v==40 for v in lst) else 'Failure')
【讨论】:
【参考方案2】:小修改:
if len(set(lst)) == 1 and 40 in lst:
print("Success")
else:
print("Failure")
【讨论】:
【参考方案3】:这将是您问题的一个示例:
lst = [40, 4, 40, 40]
for i in range(len(lst)):
if (lst[i] == 40):
success = True
else:
success = False
break
print(success)
【讨论】:
【参考方案4】:set(lst)
将为您提供一个容器,其中lst
的每个元素仅出现一次。如果每个元素都是 40,那么集合将包含 40,仅此而已。
所以你可以检查
if set(lst)==40:
...
【讨论】:
以上是关于如果列表中的所有值都是 40,则 Python 返回成功 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如果列中的所有值都是一位数,则将 % 值显示为“+-ONESPACE-1.00%”,如果有两位数,则显示“+-TWOSPACES-1.00%”
如果所有值都相同,则循环遍历 bash 测试中的列 - AWK
如果数组中的所有值都为真(字符串)并且其中一个值为假(字符串),则如何返回布尔值 true 停止使用 Javascript 进行检查