比较 python 中的两个多维数组

Comparing two multi-dimensional array in python

我的列表如下所示(这些数字是 UIDS):

sysusers = [['user1'],[7972],
           ['user2'],[2121],
           ['hacker'],[2132]
           ['hacker2'],[1232]]
users = [['user1'],[7972],
        ['user2'],[2121]]

我想找出这两个列表的不同之处并将其输出到类似于这样的列表中:

badusers = [hacker,
           hacker2]

您遇到的第一个问题是列表的结构方式。

每个列表之间需要用逗号分隔。

sysusers = [['user1'],[7972],
           ['user2'],[2121],
           ['hacker'],[2132],
           ['hacker2'],[1232]]

users = [['user1'],[7972],
        ['user2'],[2121]]

一旦正确,访问您需要的数据就很简单了。

goodusers = []

for i in users:
    for j in i:
        for k in sysusers:
            for l in k:
                if l == j:
                    goodusers.append(k)

badusers = [x for x in sysusers if x not in goodusers]
print(badusers)

[['hacker'], [2132], ['hacker2'], [1232]]