Get the value of a nested tuple at certain index like so:
tup = ((-3, (6, 15), 3), -9, ((-3, -6, 9, -5), -2)) print(tup[0][1][1]) >> 15
Want to query a nested tuple by index using as a list to represent the index, something like:
def getTupValue(input_tuple, input_list=[]) ## returns the value at for example: tup[0][1][1] getTupValue(tup, [0, 1, 1]) ## returns 15
Advertisement
Answer
If you’re sure that there won’t be index errors, you can simply do:
def get_by_indexes(tup, indexes): for index in indexes: tup = tup[index] return tup mytuple = ((-3, (6, 15), 3), -9, ((-3, -6, 9, -5), -2)) print(get_by_indexes(mytuple, [0, 1, 1]))
Output:
15