【问题标题】:Finding non existing fields from an array in another array从另一个数组中的数组中查找不存在的字段
【发布时间】:2021-10-20 02:44:22
【问题描述】:

我正在编写一个包含 2 个 python 数组的代码,svslistprlist。出于此任务的目的,我应该查找存在于svslist 数组中但不存在于prlist 数组中的值。

到目前为止,我已经提出了一个解决方案,可以显示两者中都存在的字段。我真正想要完成的是找出svslist 数组中存在的字段,而不是prlist 数组中存在的字段。

此外,我还想找出存在于prlist 数组中但不存在于svslist 数组中的字段。为了简单起见,我保留了实际填充两个数组的代码。有人可以解释一下我应该如何做到这一点吗?

到目前为止,这是我的代码的 sn-p:

import os
import json

svslist=[]
prlist=[]
count=0

print("FIELDS IN SVS:",x)
print("FIELDS IN Profile:",y)
print("\n")

svslist=list(dict.fromkeys(svslist))
prlist=list(dict.fromkeys(prlist))


x=(len(svslist))
y=(len(prlist))


print("FIELDS IN SVS AFTER CLEANUP:",x)
print("FIELDS IN Profile AFTER CLEANUP:",y)
print("\n")

for q in range(x):
    for w in range(y):
        if svslist[q]==prlist[w]:
            count=count+1
            print(svslist[q]," exists in Profile")
        else:
            continue
print("\nTotal",count,"fields from SVS exist in Profile")

【问题讨论】:

    标签: python arrays python-3.x python-2.7 dynamic-arrays


    【解决方案1】:

    您可以遍历您的 SVS 列表,并使用“in”语句检查每个条目是否存在于 Profile 中。同样,您可以使用 else 语句来提取不在您的 prlist 中的值:

    count = 0
    svs_only = []
    for i in range(len(svslist)):
        if svslist[i] in prlist:
            count += 1
            print(svslist[i]," exists in Profile")
        else:
            svs_only.append(svslist[i])
    print("\nTotal",count,"fields from SVS exist in Profile")
    print("\nSVS Fields not present in Profile:",svs_only)
    

    【讨论】:

      猜你喜欢
      • 2016-06-18
      • 2014-02-15
      • 1970-01-01
      • 2021-07-18
      • 2019-02-13
      • 1970-01-01
      • 2018-10-27
      • 1970-01-01
      相关资源
      最近更新 更多