Python 如何在没有for循环的情况下比较列表中的元素?
我有一个列表:Python 如何在没有for循环的情况下比较列表中的元素?,python,Python,我有一个列表:R=['123',1854',000']我想确保它上面的所有元素都具有相同的长度,但我不想使用for循环 我试过这个: if R[::] !== R[::]: print('false') 显然,它不起作用 是否可以在不使用for循环的情况下执行此操作 以及如何将其作为断言错误,如:assert…,“False”?如果列表元素的长度不同,则引发AssertError。您可能应该创建一个函数并调用该函数,但您可以这样做 result = any(map(lambda x: l
R=['123',1854',000']
我想确保它上面的所有元素都具有相同的长度,但我不想使用for
循环
我试过这个:
if R[::] !== R[::]:
print('false')
显然,它不起作用
是否可以在不使用for
循环的情况下执行此操作
以及如何将其作为断言错误,如:
assert…,“False”
?如果列表元素的长度不同,则引发AssertError。您可能应该创建一个函数并调用该函数,但您可以这样做
result = any(map(lambda x: len(x) != len(R[0]), R))
if len(set(map(len,R))) != 1:
# Do something, there exists elements of different sizes
有一个循环吗?为什么你不想放一个for循环呢?你总是可以做一个函数,每次调用那个函数?添加代码是编程的一个基本概念,不是吗?
if len(set(map(len,R)))!=1:print(False)
列表理解类似于for循环,但在列表中谢谢您的回复,但代码返回的结果与我想要的相反:如果元素长度不同,则print False。