主要问题:如何识别数组中元组中的元素?示例:
[(1,2),(1,4),(5,6),(4,8)]
子问题:我想隔离没有其他父母的每个元组的父母节点(在上面的示例中我想隔离1和5)。
我试图遍历数组中每个元组的第一个元素,类似
for i in array
答案 0 :(得分:3)
只需遍历每个数组项(即元组),然后获取第一个元素。
unset($myArray['']);
父节点在此处使用不正确。在这种情况下,这可能适合您要解决的情况,请提及详细信息。例如您是否正在考虑阵列中树的边缘?否则,您会用这样的话使人迷惑。
答案 1 :(得分:3)
当您遍历列表时,可以打开元组的包装:
for parent, _ in array:
print(parent)
答案 2 :(得分:2)
您可以使用反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]
答案 3 :(得分:1)
您可以按以下方式访问第一个元素或称其为父节点-
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]
答案 4 :(得分:1)
您可以使用列表推导从数组创建列表;
array = [(1,2),(1,4),(5,6),(4,8)]
print([x[0] for x in array])
输出:
[1, 1, 5, 4]
答案 5 :(得分:1)
我假设语言是python
k= [(1,2),(1,4),(5,6),(4,8)]
for x in k:
print(x[0])