**
labels = ['UNREAD', 'CATEGORY_PERSONAL', 'INBOX']
incomingLabels = ['UNREAD','IMPORTANT' 'CATEGORY_PERSONAL', 'INBOX']
Run Code Online (Sandbox Code Playgroud)
**
labels array是静态数组。我如何检查incoming array包含labels array.
我的尝试
intersectionOfTwoArrays = list(set(incomingLabels) & set(labels))
if np.array_equal(labels, intersectionOfTwoArrays):
//Do somthing
Run Code Online (Sandbox Code Playgroud)
该尝试未成功,因为intersectionOfTwoArrays's与订购的顺序不同labels array
任何人都可以帮助我吗?
在执行 array_equal 之前将两个列表都转换为 set 以避免顺序问题
labels = ['UNREAD', 'CATEGORY_PERSONAL', 'INBOX']
incomingLabels = ['UNREAD','IMPORTANT', 'CATEGORY_PERSONAL', 'INBOX']
intersectionOfTwoArrays = list(set(incomingLabels) & set(labels))
if np.array_equal(set(labels), set(intersectionOfTwoArrays)):
# Do somthing
print "match"
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用 set 方法 issubset
labels = ['UNREAD', 'CATEGORY_PERSONAL', 'INBOX']
incomingLabels = ['UNREAD','IMPORTANT', 'CATEGORY_PERSONAL', 'INBOX']
if set(labels).issubset(set(incomingLabels)):
# issubset true, do something
print "match"
Run Code Online (Sandbox Code Playgroud)