python中interval_Python 数值区间处理_对interval 库的快速入门详解
使用 python 进行数据处理的时候,常常会遇到判断一个数是否在一个区间内的操作。我们可以使用 if else 进行判断,但是,既然使用了 python,那我们当然是想找一下有没有现成的轮子可以用。事实上,我们可以是用 interval 这一个库来完成我们需要的操作。
区间判断基础
最基础的区间判断操作就是先创建一个区间几个,然后使用 in 来判断一个数是否存在于区间之内。代码如下:
from interval import interval
zoom_2_5 = interval(2, 5)
print(zoom_2_5)
>> [2..5]
print(2 in zoom_2_5)
>> true
print(6 in zoom_2_5)
>> false
我们可以从上面的代码看到,我们先使用 interval 创建一个集合,然后将我们想要比较的数用 in 即可得到结果。但是,我们都知道,我们的集合其实是有分开区间和闭区间的,上面的代码中,创建的是 [2, 5] 的区间集合,那么假如我们想要创建一个如 (2, 5] 的集合,应该如何呢?
请看下面的代码:
zoom_o2_5 = interval(2, 5, lower_closed=false)
print(zoom_o2_5)
>> (2..5]
print(2 in zoom_o2_5)
>> false
zoom_o2_o5 = interval(2, 5, closed=false)
print(zoom_o2_o5)
>> (2..5)
从上面的代码可以看到,在使用 interval 创建集合的时候,使用 lower_closed 参数,我们可以将集合区间下限设置为非闭区间,也就是开区间,这样我们比较 2 是否在这个区间里的时候,返回的结果是 false。类似的,如果想区间上限设置为开区间,可以将 upper_closed 设置为 false,如果想直接创建一个开区间,那么久可以直接设置 closed 为 false。
集合的操作
interval 有三种对集合区间的操作方法,分别是 join overlaps adjacent_to ,以下将演示以下这三个方法的用法:
zoom_1_3 = interval(1, 3)
zoom_1_5 = interval(1, 5)
zoom_o3_5 = interval(3, 5, lower_closed=false)
# join 合并两个连续的区间集合
print(zoom_1_3.join(zoom_1_5))
>> [1..5]
# overlaps 判断两个区间是否重复
print(zoom_1_3.overlaps(zoom_1_5))
>> true
print(zoom_1_3.overlaps(zoom_o3_5))
>> false
# adjacent_to 判断区间是否相邻比重复
print(zoom_1_3.adjacent_to(zoom_o3_5))
>> true
小结
interval 库还提供了 intervalset 包,里面提供了对多个 interval 的操作,碍于篇幅的关系以及在实际应用中场景的不同具体用法也不一样,这里就不赘述了,向更深入了解可以使用 ipython 进入交互模式然后使用 help() 方法来查看具体不同方法的用法,这个库里面都提供了详细的说明。本文的介绍就到这里,希望对你有帮助。
以上这篇python 数值区间处理_对interval 库的快速入门详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持萬仟网。
希望与广大网友互动??
点此进行留言吧!
python中interval_Python 数值区间处理_对interval 库的快速入门详解相关推荐
- python符号格式化设置区间_Python 数值区间处理_对interval 库的快速入门详解
使用 Python 进行数据处理的时候,常常会遇到判断一个数是否在一个区间内的操作.我们可以使用 if else 进行判断,但是,既然使用了 Python,那我们当然是想找一下有没有现成的轮子可以用. ...
- python怎么安装myqr_python二维码操作:对QRCode和MyQR入门详解
python是所有编程语言中模块最丰富的 生活中常见的二维码功能在使用python第三方库来生成十分容易 三个大矩形是定位图案,用于标记二维码的大小.这三个定位图案有白边,通过这三个矩形就可以标识一个 ...
- 在python中使用关键字define定义函数_python自定义函数def的应用详解
这里是三岁,来和大家唠唠自定义函数,这一个神奇的东西,带大家白话玩转自定义函数 自定义函数,编程里面的精髓! def 自定义函数的必要函数:def 使用方法:def 函数名(参数1,参数2,参数-): ...
- python中map()和dict()怎么用?你知道吗?-用法详解
map()用法 map()是python的内置函数,会根据提供的函数对指定序列做映射. 语法: map(func, iter, ...) 其中func为一个功能函数,iter表示可迭代参数序列.map ...
- python中match方法返回字符串的长度_Python re模块与正则表达式详解
Python 中使用re模块处理正则表达式,正则表达式主要用来处理文本中的查找,匹配,替换,分割等问题:我们先来看一个问题,切入正则表达式. 问题: 匹配字符串,最少以3个数字开头.使用Python代 ...
- python中必须使用import引入模块_Python之import方法引入模块详解
在python用import或者from-import或者from-import-as-来导入相应的模块,作用和使用方法与C语言的include头文件类似.其实就是引入某些成熟的函数库和成熟的方法,避 ...
- python中paste函数的作用_PIL图像处理模块paste方法简单使用详解
python2中提供了PIL基础的图像数据出来模块,在python3中更名为了pillow模块,名字虽然发生了改变,但是提供的方法和功能都是一样的,对于日常基础的图像数据处理分析来说是足够用了的,现在 ...
- python中for in range的用法_Python for i in range ()用法详解
for i in range ()作用: range()是一个函数, for i in range () 就是给i赋值: 比如 for i in range (1,3): 就是把1,2依次赋值给i r ...
- python中rand和randn_基于numpy.random.randn()与rand()的区别详解
下面为大家分享一篇基于numpy.random.randn()与rand()的区别详解,具有很好的参考价值,希望对大家有所帮助.一起过来看看吧 numpy中有一些常用的用来产生随机数的函数,randn ...
- python中 for i in range(10)_Python for i in range ()用法详解
for i in range ()作用: range()是一个函数, for i in range () 就是给i赋值: 比如 for i in range (1,3): 就是把1,2依次赋值给i r ...
最新文章
- 转 docker的下载与安装
- 用WidgeDuino创建一个SCADA(监控与数据採集)系统
- Spring IOC注入Map接口小技巧
- 动手开始创建第一个 Angular 应用并通过 gh-pages 发布到 Github 上
- sympy科学计算器
- javascript --- XMLHttp2级、CORS(跨域资源共享)
- Java并发编程-线程池底层工作原理
- 两级页表如何实现地址转换
- k8s容器灰度发布最佳实践(基于spinnaker)
- CommonLibrary——框架通用工具库
- C#基础复习(4) 之 浅析List、Dictionary
- rac san+oracle_Oracle RAC安装部署之规划(一)
- quartus支持linux系统,在64位Linux下把Quartus II设置成64位的方法
- 一元线性回归原理及代码实现
- 人机大战简史(第二版)
- Linux C/C++ 服务器/后端开发/后台开发学习路线
- MySql in子句 效率低下优化
- 《Linux内核设计与实现》读书笔记(四)- 进程的调度
- Axios—循环发送请求
- 计算机组成原理 总线与微命令实验
热门文章
- 上课笔记-机器学习(5)-美国人口普查数据进行收入预测分类
- jupyter无法重命名,文件不可信,后台被自动关闭
- 模拟信道和数字信道的区别
- JAVA (Graphics2D)解决合成图片失真问题
- python猜数字游戏实例_Python文曲星猜数字游戏实例代码教程
- ❤ ❤html canvas面向对象的彩色小球❤ ❤
- 伦斯勒理工学院计算机科学专业强吗,伦斯勒理工学院专业排名一览及最强专业推荐(USNEWS美国大学排名)...
- 含echarts图表の网页打印
- kali之beef的使用
- eovs实训报告总结心得_实训报告收获心得体会