python - 删除另一个列表中的列表中的第二个值
问题描述
我有一个包含许多其他内部列表的列表,其中一些内部列表包含两个值。我想删除内部列表中的所有第二个值。
[['a'], ['b'], ['c', 'd'], ['e'], ['f', 'g']]
我可以为此使用 rsplit() 还是有其他更好用的拆分函数?
解决方案
如果您不关心就地执行此操作:
>>> outer = [['a'], ['b'], ['c', 'd'], ['e'], ['f', 'g']]
>>> outer = [inner[:1] for inner in outer]
>>> outer
[['a'], ['b'], ['c'], ['e'], ['f']]
我使用列表推导创建了一个新列表,其中包含原始内部列表的一个元素的切片。
如果您需要就地执行此操作:
for inner in outer:
if len(inner) > 1:
del inner[1]
推荐阅读
- powershell - 将长文本字符串拆分为预定义的固定长度
- ios - iOS 键盘下的空白区域
- java - 无法在 Java 中同时使用 STDIN 和 STDERR 读取程序输出
- c++ - 从文件中读取所有数据
- java - 如何在 Smali 中将 iput-object 布尔值设置为 true?
- ios - 更改焦点上的文本字段
- java - foreach:为什么不能在外面声明元素变量?
- c++ - 在右值和左值引用中创建函数时,有没有办法避免重复代码?
- java - Spring RestTemplate 如何将 POJO 与 application/x-www-form-urlencoded 一起使用?
- php - 在三个相关表中计算几个字段并分组