簡體   English   中英

在python中讀取多個元組的最里面的值

[英]Read innermost value in multiple tuple in python

我想 入元組最里面的值

Input - (((False, 2), 2), 2)
Output - False

我只想讀取 False值。 元組大小各不相同,但我只想直接讀取 內層元組的最內層值

您可以使用生成器函數展平元組並返回第一項:

from collections import Iterable

def solve(seq):
    for x in seq:
        if isinstance(x, Iterable) and not isinstance(x, basestring):
            for y in solve(x):
                yield y
        else:
            yield x
...             
>>> next(solve((((False, 2), 2), 2)))
False

您可以使用遞歸來做到這一點:

def i(I):
 try:
      return i(I[0])
 except:
      return I

Input = (((False, 2), 2), 2)
print i(Input)

您可以使用索引,就像在列表中一樣訪問它:

>>> a = (((False, 2), 2), 2)
>>> a[0][0][0]
False

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM