Python - 测试所有元素在矩阵的列中是否唯一

当需要测试矩阵的列中的所有元素是否唯一时,使用简单的迭代和列表推导以及“集合”运算符。

以下是相同的演示 -

示例

my_list = [[11, 24, 84], [24, 55, 11], [7, 11, 9]]

print("名单是:")
print(my_list)

my_result = True

for index in range(len(my_list[0])):

   column = [ele[index] for ele in my_list]

   if len(list(set(column ))) != len(column ):
      my_result = False
      break

if(my_result == True):
   print("All columns are unique")
else:
   print(("All columns are not unique"))
输出结果
名单是:
[[11, 24, 84], [24, 55, 11], [7, 11, 9]]
All columns are unique

解释

  • 定义了一个带有整数的列表列表并显示在控制台上。

  • 变量被分配布尔值“True”。

  • 迭代列表,并使用列表理解来查找元素的索引。

  • 如果满足特定条件,i.e如果列表中唯一元素的长度不等于元素的长度,则布尔值初始化为“假”。

  • 控制跳出循环。

  • 最后,根据布尔值,在控制台上显示相关消息。