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中pygame针对游戏窗口的显示方法实例分析(附源码)
Nov 11 Python
理解Python垃圾回收机制
Feb 12 Python
python中装饰器级连的使用方法示例
Sep 29 Python
浅谈利用numpy对矩阵进行归一化处理的方法
Jul 11 Python
python logging重复记录日志问题的解决方法
Jul 12 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
Jan 29 Python
Python对接六大主流数据库(只需三步)
Jul 31 Python
Django rest framework jwt的使用方法详解
Aug 08 Python
使用keras时input_shape的维度表示问题说明
Jun 29 Python
Python如何发送与接收大型数组
Aug 07 Python
python语言实现贪吃蛇游戏
Nov 13 Python
Python基础之tkinter图形化界面学习
Apr 29 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
PHP GD 图像处理组件的常用函数总结
2010/04/28 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
2016/04/11 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
php原生导出excel文件的两种方法(推荐)
2016/11/19 PHP
[原创]PHP正则删除html代码中a标签并保留标签内容的方法
2017/05/23 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
JS图片无缝、平滑滚动代码
2014/03/11 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
js检测iframe是否加载完成的方法
2015/11/26 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
javascript实现二叉树的代码
2017/06/08 Javascript
JavaScript实现秒杀时钟倒计时
2019/09/29 Javascript
小程序自定义模板实现吸顶功能
2020/01/08 Javascript
jquery实现两个div中的元素相互拖动的方法分析
2020/04/05 jQuery
js实现弹幕墙效果
2020/12/10 Javascript
[03:17]2014DOTA2 国际邀请赛中国区预选赛 四强专访
2014/05/23 DOTA
c++生成dll使用python调用dll的方法
2014/01/20 Python
Python3基础之list列表实例解析
2014/08/13 Python
Python 错误和异常代码详解
2018/01/29 Python
PyQt5每天必学之布局管理
2018/04/19 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
Django 在iframe里跳转顶层url的例子
2019/08/21 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
css3实现input输入框颜色渐变发光效果代码
2014/04/02 HTML / CSS
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
HTML5中div、article、section的区别及使用介绍
2013/08/14 HTML / CSS
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
Tea Collection官网:一家位于旧金山的童装公司
2020/08/07 全球购物
网吧收银员岗位职责
2013/12/14 职场文书
机关门卫岗位职责
2013/12/30 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
市场调研项目授权委托书范本
2014/10/04 职场文书
小学生作文评语集锦
2014/12/25 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
解析Java中的static关键字
2021/06/14 Java/Android