假设我有一个多维列表l:
l = [['a', 1],['b', 2],['c', 3],['a', 4]]
Run Code Online (Sandbox Code Playgroud)
我想返回另一个列表,其中只包含第一个列表元素中包含'a'的行:
m = [['a', 1],['a', 4]]
Run Code Online (Sandbox Code Playgroud)
这样做有什么好方法?
Ale*_*lli 16
绝对是列表理解的一个案例:
m = [row for row in l if 'a' in row[0]]
Run Code Online (Sandbox Code Playgroud)
在这里,我从字面上看你的"在' 第一个元素' 中 ",从而使用in运算符.如果你想把它限制为"有'一个' 作为第一个元素"(与你实际写的东西完全不同! - ),那么
m = [row for row in l if 'a' == row[0]]
Run Code Online (Sandbox Code Playgroud)
更喜欢它;-).