主要问题:如何在数组中的元组中识别元素?例:
[(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])