python列表左闭右开_python中的细节—左闭右开原则
import numpy as np
print("--------------list-------------------")
a = [i for i in range(10)]
print(len(a))
print(a)
print("--------------list分割--------------------")
print(a[0:3])
print(a[3:10])
print(a[-5:])
print("--------------array-------------------")
b = np.arange(10)
print(len(b))
print(b)
print("--------------array分割--------------------")
print(b[0:3])
print(b[3:])
根据以上的实验得出结论python中的有关下标的结构都满足左闭右开原则。那么为什么要遵循左闭右开原则呢?
1、因为在计算机硬件中迭代器对比较大小的运算很麻烦,有些时候两个地址都无法比较大小。但是比较是否相等就会简单的多,比如我要 range(10) 这时候只需判断从0开始每次加一,直到等于10的时候结束循环。
其实程序里使用左闭右开的原因是:考虑一个区间[0, n], 如果我需要遍历这个区间,需要迭代器支持比较操作。
即:i = 0;while (i <= n) do { process(i); i++;}
而很多抽象的迭代器是无法来比较大小的,比如二叉树里指向一个节点的指针。而如果使用左闭右开区间[0, n),我们遍历这个区间只需要迭代器支持比较相等操作就可以了。即:i = 0;while (i != n) do { process(i); i++}
2、
比较一下下面三种划分实数的方案
[0, 1] (1, 2) [2, 3]…
(0, 1) [1, 2] (2, 3)…
[0, 1) [1, 2) [2, 3)…
显然半闭半开划分方案最美,所有区间包含的元素“一样多”。半闭半开的原则中,因为人们的习惯通常都是从左向右读数据,所以两者相比之下左闭右开更自然
python列表左闭右开_python中的细节—左闭右开原则相关推荐
- python列表和集合的异同_Python中的list与tuple集合区别解析
Python中内置了list集合与tuple集合,在list集合中可以实现元素的添加.修改.插入.以及删除.tuple集合看似与list类似,但两者还是有很大的区别. 在tuple集合中,一旦元素被存 ...
- python 列表 元祖 字典 集合_python中列表、元祖、字典和集合
list 允许重复的集合,是有序的:即元素可以是一样的,也可以修改元素: tuple 允许重复的集合,是有序的:但子元素是不可以修改的 dict 允许重复的集合,是无序的:元素是可以修改的 set ...
- Python基础_第3章_Python中的循环结构
Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...
- Python基础_第5章_Python中的数据序列
Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...
- python中列表是什么样的数据结构_Python中列表、字典、元组、集合数据结构整理...
Python常见数据结构整理 Python中常见的数据结构可以统称为容器(container).序列(如列表和元组).映射(如字典)以及集合(set)是三类主要的容器. 一.序列(列表.元组和字符串) ...
- python可以使用二维元组吗_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...
怎么去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...
- python列表元素下标是什么_python列表中元素插入位置总结
python列表中元素插入位置总结 , python中列表去掉最后一个元素 ist.insert(index,obj) 列表与方法之间用点号相隔,括号内需要添入的参数分别是索引和要插入的元素. 要完成 ...
- python列表嵌套字典取值_Python基础语法:你不得不知的几种变量类型
(点击上方快速关注并设置为星标,一起学Python) 作者:kina_chen來源:简书 01. Python编码Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字, ...
- python列表的内置方法_Python内置方法详解
1. 字符串内置方法详解 为何要有字符串?相对于元组.列表等,对于唯一类型的定义,字符串具有最简单的形式. 字符串往往以变量接收,变量名.可以查看所有的字符串的内置方法,如: 1> count: ...
- python列表的排序方法是_Python列表排序 reverse、sort、sorted 操作方法详解
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
最新文章
- ICRA2022 | AutoPlace:车载单片毫米波雷达场景识别
- ArrayList的add(E e)方法与扩容
- python基础教程--代码集合(上)
- python shell运行当前程序、可以按下_Python下调用Linux的Shell命令的方法
- Cookie简介及JSP处理Cookie的方法
- eclipse的简介安装与配置
- SushiSwap将于5月17日上线IDO平台Miso
- 拓端tecdat|Matlab广义线性模型glm泊松回归的lasso、弹性网络正则化分类预测考试成绩数据和交叉验证可视化
- 微信开发-点击链接自己主动加入关注
- 交换机的接口类型和Ensp中线缆类型
- 大数据给人们生活带来的改变_大数据给我们的生活带来了哪些改变?
- Python学习笔记 使用matplotlib创建Gif动图
- ORACLE SPA and RAT
- 爬取煎蛋网图片的一种思路
- np.percentile用法
- wallpaper动态壁纸软件
- 云计算技术优势和商业优势是什么,主要有哪些特点?
- python解除windows锁屏_用python获取win10锁屏图片
- Python turtle绘制——癸卯(兔)年卯兔图
- 社区计算机义务维修策划书,义务维修电脑策划书.doc
热门文章
- python输出10行带标号的hello、world_#000 Python 入门第一题通过扩展,学到了更多的知识...
- ArcGIS 把字段允许空值设为否
- Word(二) Word2016 如何删除页眉的下划线
- php for iis express,iis10.0完整安装包
- HDU 2209 翻纸牌游戏 By Assassin 模拟
- Day-26 多线程和多进程
- 为何卡普空选择在游戏里塑造如此性感妖艳的女性角色
- 域名怎样实现自动跳转
- 计算机网络期末考点复习
- Python每日一练-----快乐数