2024-04-20 11:19:18 发布
网友
如何修改以下列表:
[('AAA', '1-1', 1, (1.11, (2.22, 3.33))), ('BBB', '2-2', 2, (4.44, (5.55, 6.66))), ('CCC', '3-3', 3, (7, (8, 9)))]
变成这样:
[('AAA', '1-1', 1, 1.11, 2.22, 3.33), ('BBB', '2-2', 2, 4.44, 5.55, 6.66), ('CCC', '3-3', 3, 7, 8, 9)]
非常感谢。你知道吗
看起来您想展平作为外部列表成员的元组?你知道吗
试试这个:
>>> def flatten(lst): return sum( ([x] if not isinstance(x, (list, tuple)) else flatten(x) for x in lst), [] ) >>> def modify(lst): return [tuple(flatten(x)) for x in lst] >>> x = [('AAA', '1-1', 1, (1.11, (2.22, 3.33))), ('BBB', '2-2', 2, (4.44, (5.55, 6.66))), ('CCC', '3-3', 3, (7, (8, 9)))] >>> modify(x) [('AAA', '1-1', 1, 1.11, 2.22, 3.33), ('BBB', '2-2', 2, 4.44, 5.55, 6.66), ('CCC', '3-3', 3, 7, 8, 9)] >>>
希望有帮助:-)
不是特定的解决方案,但itertools库中有很多很好的方法:
http://docs.python.org/library/itertools.html
看起来您想展平作为外部列表成员的元组?你知道吗
试试这个:
希望有帮助:-)
不是特定的解决方案,但itertools库中有很多很好的方法:
http://docs.python.org/library/itertools.html
相关问题 更多 >
编程相关推荐