【发布时间】:2018-04-16 12:18:44
【问题描述】:
问题
我有下一个列表:
a = (('_a_1', '_a_2'), [0.3, 0.6])
b = (('_a_3', '_a_4'), [0.15, 0.56])
c = (('_a_5', '_a_6'), [0.22, 0.6])
l = [a, b, c]
我不想要的:选择列表的第一个元组并删除 _a_ 标签。
结果:
[['1','2'],['3','4'],['5','6']]
我尝试了什么
我知道我可以使用 列表理解 做到这一点。但我无法理解它:D 我正在尝试:
[ el.replace('_a_','') for m in l for el in m[0]]
结果:
['1', '2', '3', '4', '5', '6']
我认为它已接近正确的解决方案。只需添加如下内容:
[ [el.replace('_a_','') for m in l] for el in m[0]]
但它不起作用......
【问题讨论】:
-
你能用文字解释一下你的理解是什么吗?这将帮助您澄清更多,而不是在这里和那里添加随机括号
-
@MadPhysicist 我想将内部循环放入列表
[]。 -
@Mikhail_Sam 您发布的声称可以工作的代码实际上没有。它抛出
NameError: name 'm' is not defined。 -
@Ev.Kounis你是对的!从错误的地方复制!谢谢。
标签: python list for-loop list-comprehension nested-loops