python - 从列表中删除值
问题描述
我有一个看起来像这样的多个数据框:
A = [0,0,0,1,0,-1,2,-3,0,4,-4]
B = [0,0,0,1,-5,0,5,-6,0,4,-3,5,-6]
我想返回一个返回值,其中 dataFrame 的第一个条目是-ve值,而最后一个数据是+ve值。
输出
A = [-1,2,-3,4]
B = [-5,5,-6,4,-3,5]
如何运行循环来查看所有数据框?数据帧的长度不同。
解决方案
代码:
a = [0,0,0,1,0,-1,2,-3,0,4,-4]
b = [0,0,0,1,-5,0,5,-6,0,4,-3,5,-6]
def arr(x):
x[:] = (value for value in x if value != 0)
while x[0] > 0:
x.pop(0)
while x[-1] < 0:
x.pop()
# print(x)
return x
print(arr(a))
print(arr(b))
输出:
[-1, 2, -3, 4]
[-5, 5, -6, 4, -3, 5]
你也可以使用x.pop(0)
而不是del x[0]
推荐阅读
- javascript - React-Native 如何为每个项目设置不同的状态
- php - 根据 WooCommerce 购物车中的购物车项目数显示消息
- java - Java:如何区分何时声明其自身或其父对象的 Object 实例?
- vue.js - 运行时的 Vue 和 lint:如何配置?
- javascript - 下拉菜单不允许我点击我的菜单项
- python - 试图使两个子进程共享处理相同资源的负载的问题
- java - 如何正确实现stfalcon的chatkit
- python - 如何使用 bash 从 groovy 脚本控制台(Jenkins)向 python 发送单个流水线命令?
- r - 使用来自两个不同列的条件重新创建数据框
- javascript - 使用 include() 搜索标签