python删除数组元素_python:从数组列表中删除一系列数字

我在从数组列表中删除范围A到B的元素时遇到问题。我在网上搜索的解决方案似乎只适用于单个元素、相邻元素和或整数元素。我在处理浮点数。

1

2

3

4

5

6

7self.genx = np.arange(0, 5, 0.1)

temp_select = self.genx[1:3] #I want to remove numbers from 1 - 3 from genx

print(temp_select)

self.genx = list(set(self.genx)-set(temp_select))

print(self.genx)

plt.plot(self.genx,self.geny)

然而,我在控制台中得到了以下信息,这是因为我减去了浮点数而不是整数,所以它实际上减去了而不是删除了处理整数时要做的事情:

genx:[0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9,3.0,3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9,4.0,4.1,4.2,4.3,4.4,4.5、4.6、4.7、4.8、4.9条]

温度选择:[0.1 0.2]

genx(减去后):[0.0,0.5,2.0,3.0,4.0,1.5,1.0,1.1000000000001,0.7000000000000007,0.900000000000000000002,2.70000000000002,0.30000000000000004,2.900000000000004,1.900000000000001,3.30000000000000003,0.40000000000000000000002,4.700000000000000000002,3.4000000000000000004,2.20000000000000002,2.8000000000000000000000003,1.4000000000000000000,0.600000000000000 9、3.6000000000000001、1.3、1.200000000002、4.2999999999998、4.20000000000000002、4.900000000000004、3.900000000000004、3.800000000000003、2.30000000000000003、4.800000000000007、3.20000000000000002、1.700000000000002、2.5、3.5、1.8、4.10000000000000000000005、2.40000000000004、4.4000000000000000004、1.600000000000000000001、0.8000000000000004、2.6000000000000001、4.6000000000000005、2.100000000000000001、3.10000000000000001、3.700000000000002、4.5]

请注意,方括号[]用于基于索引的访问。self.genx[1:3]是指"self.genx的第一和第二元素"。这与这些索引的值存储完全无关。

1self.genx = [ item for item in self.genx if not range_min <= item <= range_max ]

这就是你想要的吗??

我没有测试这个,但是你应该能够做如下的事情:

1self.genx = [ item for item in self.genx if not range_min < item < range_max ]

这很管用!不过,它会把数字四舍五入。因此,如果我设置min=2,max=4,genx是:[0.0,0.100000000000000001,0.2000000000001,0.30000000000000004,0.40000000000000002,0.5,0.6000000000000009,0.700000000000007,0.800000000000004,0.9000000000000002,1.0,1.100000000000000001,1.2000000000002,1.3,1.4000000000000000001,1.5,1.60000000000000001,1.70000000000000000002,1.8,1.9000000000000001,2.0,4.0,4.10000000000005,4.200000000002,4.2999999999998,4.40000000000000004,4.5,4.6000000000000005,4.700000000000002,4.800000000000007,4.900000000000004]可修复?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值