python - 删除另一个列表中列表中的第二个值

标签 python python-3.x

我有一个包含许多其他内部列表的列表,其中一些内部列表包含两个值。我想删除内部列表中的所有第二个值。

[['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]

关于python - 删除另一个列表中列表中的第二个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50755646/

相关文章:

python - Django rest 框架序列化程序有效始终为 false

python - 如何从 Python 中的 json 文件中获取字典?

python - 为什么 python 扩展共享库?是否可以制作静态链接库?

validation - 如何在抽象类级别提供值验证?

python - 格式化包含带前导零的小数点的数字

python - ROS CPP 相当于 Python subprocess.call() with shell=True

python-3.x - 在 test_request_context 中捕获 Flask 中止状态代码

python - 递归基础表示

python-3.x - python 3中标识符中的特殊字符

python-3.x - 在Python 3中的Elasticsearch内部存储PDF文件的字节内容