python 切片和range()用法说明


Posted in Python onMarch 24, 2013

理解切片基本用法:

首先需要明白,可迭代对象,按照正数索引(正序)是从0开始的,按照负数索引(逆序)是从-1开始的。
>>> astring = 'Hello world'
>>> astring[0:2]
'He'
>>>
可见,这种情况下,给切片操作一个起始位置,和一个终止位置,则显示从起始位置开始(包括起始位置)到终止位置(不包括终止位置)之间的内容;

在有负数索引的情况下,是类似的,只要确定终止位置的内容:

>>> astring[0:-1]
'Hello worl'
>>>

>>> astring
'Hello world'
>>> astring[0::1]
'Hello world'
>>> astring[0::2]
'Hlowrd'
>>> astring[0::3]
'Hlwl'
>>> astring[0::4]
'Hor'
>>>
在有三个参数的情况下,第一个起始位置,第二个是终止位置,地三个是步长。

测试程序:
# 首先理解切片含义,如下为切片程序结果演示
>>> s='abcde'
>>> s[:0]
''
>>> s[0:]
'abcde'
>>> s[1:]
'bcde'
>>> s[2:]
'cde'
>>> s[:3]
'abc'

理解range()基本用法:

测试程序一:

>>> range(1,5) # 输出从1到5的结果。包括头,不包括尾.
[1, 2, 3, 4]
>>> range(1,5,2) # 输出从1到5,间隔距离为2的结果。包括头,不包括尾.
[1, 3]
>>> range(5) # 输出从0到5的结果。默认起止为0。包括头,不包括尾.
[0, 1, 2, 3, 4]

测试程序二:

>>> s='abcde'
>>> i = -1
>>> for i in range(-1,-len(s),-1): # 输出结果
...     print s[:i]
...
abcd
abc
ab
a

测试程序三:

>>> s='abcde'
>>> for i in range(len(s),0,-1): # 输出结果
...     print s[:i]
...
abcde
abcd
abc
ab
a

测试程序四:

>>> s='abcde'
>>> for i in [None] + range(-1,-len(s),-1): # 用None作为索引值的输出结果
...     print s[:i]
...
abcde
abcd
abc
ab
a

另外,range可以直接给list变量赋值:
elements = range(0, 6)

Python 相关文章推荐
Python入门及进阶笔记 Python 内置函数小结
Aug 09 Python
用Python代码来绘制彭罗斯点阵的教程
Apr 03 Python
Python使用plotly绘制数据图表的方法
Jul 18 Python
Python 查找字符在字符串中的位置实例
May 02 Python
利用Python实现在同一网络中的本地文件共享方法
Jun 04 Python
Python模块的加载讲解
Jan 15 Python
python文档字符串(函数使用说明)使用详解
Jul 30 Python
python实现的登录与提交表单数据功能示例
Sep 25 Python
pytorch torch.expand和torch.repeat的区别详解
Nov 05 Python
python的pyecharts绘制各种图表详细(附代码)
Nov 11 Python
python搜索算法原理及实例讲解
Nov 18 Python
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
May 28 Python
python list中append()与extend()用法分享
Mar 24 #Python
python del()函数用法
Mar 24 #Python
python dict remove数组删除(del,pop)
Mar 24 #Python
python str与repr的区别
Mar 23 #Python
python 布尔操作实现代码
Mar 23 #Python
python 字符串split的用法分享
Mar 23 #Python
python赋值操作方法分享
Mar 23 #Python
You might like
解析mysql中UNIX_TIMESTAMP()函数与php中time()函数的区别
2013/06/24 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
PHP.ini安全配置检测工具pcc简单介绍
2015/07/02 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
javascript中的toFixed固定小数位数 简单实例分享
2013/07/12 Javascript
jquery 利用show和hidden实现级联菜单示例代码
2013/08/09 Javascript
让元素在网页中可拖动示例代码
2013/08/13 Javascript
jquery 清空file域示例(兼容个浏览器)
2013/10/11 Javascript
jQuery中prevAll()方法用法实例
2015/01/08 Javascript
原生javascript实现的ajax异步封装功能示例
2016/11/03 Javascript
JavaScript手风琴页面制作
2017/05/17 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
微信小程序将字符串生成二维码图片的操作方法
2018/07/17 Javascript
JS实现方形抽奖效果
2018/08/27 Javascript
vue.js 双层嵌套for遍历的方法详解, 类似php foreach()
2018/09/07 Javascript
深入理解移动前端开发之viewport
2018/10/19 Javascript
layui-table表复选框勾选的所有行数据获取的例子
2019/09/13 Javascript
CKEditor扩展插件:自动排版功能autoformat插件实现方法详解
2020/02/06 Javascript
在Django的模型中执行原始SQL查询的方法
2015/07/21 Python
Python爬虫DNS解析缓存方法实例分析
2017/06/02 Python
pandas读取csv文件,分隔符参数sep的实例
2018/12/12 Python
python实现最速下降法
2020/03/24 Python
Python常用外部指令执行代码实例
2020/11/05 Python
pyx文件 生成pyd 文件用于 cython调用的实现
2021/03/04 Python
HTML5对手机页面长按会粘贴复制禁用的解决方法
2016/07/19 HTML / CSS
中国海淘族值得信赖的海淘返利网站:55海淘
2017/01/16 全球购物
非凡女性奢华谦虚风格:The Modist
2017/10/28 全球购物
波兰快递服务:Globkurier.pl
2019/11/08 全球购物
学生偷窃检讨书
2014/09/25 职场文书
西双版纳导游词
2015/02/03 职场文书
老公出轨后的保证书
2015/05/08 职场文书
国博复兴之路观后感
2015/06/02 职场文书
红领巾广播站广播稿
2015/08/19 职场文书
Python Django模型详解
2021/10/05 Python