在Python中,判断两个列表是否相等可以通过以下几种方法:
1. 使用 `==` 运算符:
```python
list1 = [1, 2, 3]
list2 = [1, 2, 3]
list3 = [3, 2, 1]
if list1 == list2:
print("list1与list2相等")
else:
print("list1与list2不相等")
2. 通过排序列表后比较:
```python
list_a = ['a', 'b', 'c', 'd']
list_b = ['c', 'd', 'a', 'b']
if sorted(list_a) == sorted(list_b):
print("list_a与list_b的元素相等")
else:
print("list_a与list_b的元素不相等")
3. 将列表转换为集合后比较:
```python
list_a = ['a', 'b', 'c', 'd']
list_b = ['c', 'd', 'a', 'b']
if set(list_a) == set(list_b):
print("list_a与list_b的元素相等")
else:
print("list_a与list_b的元素不相等")
4. 使用列表解析式和 `all` 函数判断列表中所有元素是否相等:
```python
def all_equal(lst):
return all(elem == lst for elem in lst)
list1 = [1, 1, 1, 1]
list2 = [1, 2, 3, 4]
print(all_equal(list1)) True
print(all_equal(list2)) False
5. 使用 `operator.eq` 函数比较列表是否相等(Python 3中):
```python
import operator
a = [1, -1, 0]
b = [1, -1, 0]
c = [-1, 1, 0]
print(operator.eq(a, b)) True
print(operator.eq(a, c)) False
6. 判断接口返回的数据结果是否一致(异步接口测试场景):
```python
def isreal(lst):
flag = False
for i in range(len(lst) - 1):
if lst[i] == lst[i + 1] == 'running':
flag = True
else:
flag = False
break
return flag
lst = ['running', 'fail', 'init', 'running']
print(isreal(lst)) True
以上方法可以帮助你判断Python中的列表是否相等