Дано
lst = [('xyz',(6,9.0,2.4),'link1'),('abc',(7.8,9.0,5),'link2')]
Перебрать lst
и распаковать внутренних кортежей во внешние кортежи.Вы можете сделать это с пониманием списка.
>>> [(x, *y, z) for x, y, z in lst]
[('xyz', 6, 9.0, 2.4, 'link1'), ('abc', 7.8, 9.0, 5, 'link2')]
Работает на python3.6.Для более старых версий используйте конкатенацию кортежей:
>>> [(x,) + y + (z,) for x, y, z in lst]
[('xyz', 6, 9.0, 2.4, 'link1'), ('abc', 7.8, 9.0, 5, 'link2')]