如何识别数组中元组中的元素



主要问题:如何在数组中的元组中识别元素?例:

[(1,2),(1,4),(5,6),(4,8)]

子问题:我想隔离没有其他父元组的每个元组的父节点(我想在上面的例子中隔离 1 和 5。

我试图遍历数组中每个元组的第一个元素,所以像

for i in array

只需遍历每个数组项(即元组(,然后获取第一个元素。

for item in arr:
do_something_with (item[0])

父节点不是此处使用的正确术语。在这种情况下,这可能适合您要解决的方案,请提及详细信息。例如,您是否在考虑数组中树中的边?否则你会用这样的词来混淆人们。

您可以在循环访问列表时解压缩元组:

for parent, _ in array:
print(parent)

您可以使用反zip函数来隔离第一个和第二个元素

>>> result = list(zip(*[(1,2),(1,4),(5,6),(4,8)]))
>>> result
>>> [(1, 1, 5, 4), (2, 4, 6, 8)]

现在,父节点是:

>>> result[0]
>>> (1, 1, 5, 4)

对于第二部分,检查哪些父节点元素不在元组的第二个元素中:

>>> [r for r in result[0] if r not in result[1]]
>>> [1, 1, 5]

您可以访问第一个元素或将其称为父节点,如下所示-

array =  [(1,2),(1,4),(5,6),(4,8)]
for tuple_ in array:
print(tuple_[0])
# Do other stuff with the parent element which is tuple_[0]

您可以使用列表推导从数组创建列表;

array =  [(1,2),(1,4),(5,6),(4,8)]
print([x[0] for x in array])

输出:

[1, 1, 5, 4]

我假设该语言为python

k= [(1,2),(1,4),(5,6),(4,8)]
for x in k:
print(x[0])

最新更新