详细记录python的range()函数用法
详细记录python的range()函数用法
使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节。这里记录一下range(),复习下list的slide,最后分析一个好玩儿的冒泡程序。
这里记录一下:
>>> range ( 1 , 5 ) #代表从1到5(不包含5)
[ 1 , 2 , 3 , 4 ]
>>> range ( 1 , 5 , 2 ) #代表从1到5,间隔2(不包含5)
[ 1 , 3 ]
>>> range ( 5 ) #代表从0到5(不包含5)
[ 0 , 1 , 2 , 3 , 4 ]
|
再看看list的操作:
array = [ 1 , 2 , 5 , 3 , 6 , 8 , 4 ]
#其实这里的顺序标识是
[ 1 , 2 , 5 , 3 , 6 , 8 , 4 ]
( 0 , 1 , 2 , 3 , 4 , 5 , 6 )
( - 7 , - 6 , - 5 , - 4 , - 3 , - 2 , - 1 )
>>> array[ 0 :] #列出0以后的
[ 1 , 2 , 5 , 3 , 6 , 8 , 4 ]
>>> array[ 1 :] #列出1以后的
[ 2 , 5 , 3 , 6 , 8 , 4 ]
>>> array[: - 1 ] #列出-1之前的
[ 1 , 2 , 5 , 3 , 6 , 8 ]
>>> array[ 3 : - 3 ] #列出3到-3之间的
[ 3 ]
|
那么两个[::]会是什么那?
>>> array[:: 2 ]
[ 1 , 5 , 6 , 4 ]
>>> array[ 2 ::]
[ 5 , 3 , 6 , 8 , 4 ]
>>> array[:: 3 ]
[ 1 , 3 , 4 ]
>>> array[:: 4 ]
[ 1 , 6 ]
如果想让他们颠倒形成reverse函数的效果
>>> array[:: - 1 ]
[ 4 , 8 , 6 , 3 , 5 , 2 , 1 ]
>>> array[:: - 2 ]
[ 4 , 6 , 5 , 1 ]
|
感觉自己懂了吧,那么来个冒泡吧:
array = [ 1 , 2 , 5 , 3 , 6 , 8 , 4 ]
for i in range ( len (array) - 1 , 0 , - 1 ):
print i
for j in range ( 0 , i):
print j
if array[j] > array[j + 1 ]:
array[j], array[j + 1 ] = array[j + 1 ], array[j]
print array
|
一行一行的来看:
line 1:array = [1, 2, 5, 3, 6, 8, 4]一个乱序的list没什么好解释的
line 2:for i in range(len(array) - 1, 0, -1):这就是上边给的例子的第二条,我们替换下就成为range(6,1,-1),意思是从6到1间隔-1,也就是倒叙的range(2,7,1),随后把这些值循环赋给i,那么i的值将会是[6, 5, 4, 3, 2]
line 3:for j in range(0, i):这是一个循环赋值给j,j的值将会是[0, 1, 2, 3, 4, 5][0, 1, 2, 3, 4][0, 1, 2, 3][0, 1, 2][0, 1]
那么上边两个循环嵌套起来将会是
i------------6
j------------0j------------1j------------2j------------3j------------4j------------5
i------------5
j------------0j------------1j------------2j------------3j------------4
i------------4
j------------0j------------1j------------2j------------3
i------------3
j------------0j------------1j------------2
i------------2
j------------0j------------1
line 4:if array[j] > array[j + 1]:
>>> array = [1, 2, 5, 3, 6, 8, 4]
>>> array[0]
1
>>> array[1]
2
>>> array[2]
5
>>> array[3]
3
>>> array[4]
6
>>> array[5]
8
>>> array[6]
4
其实·就是使用这个把这个没有顺序的array = [1, 2, 5, 3, 6, 8, 4]排序
line 5:array[j], array[j + 1] = array[j + 1], array[j] 替换赋值
line 6:打印出来
其实要想省事儿,sort()函数一句就能搞定.......
--EOF--
转载于:https://www.cnblogs.com/muziyunxuan/p/8274270.html
详细记录python的range()函数用法相关推荐
- 菜鸟教程python3循环语句_详细记录python的range()函数用法|python3菜鸟教程
使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节.这里记录一下range(),复习下list的slide,最后分析一个好玩儿的冒泡程序. 这里记 ...
- python range函数返回的是什么,python中range函数用法是什么
python中range函数用法:[range()]函数可创建一个整数列表,一般用在for循环中,函数语法为[range(start, stop[, step])],其中start是开始计数,stop ...
- (转)python的range()函数用法
使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节.这里记录一下range(),复习下list的slide,最后分析一个好玩儿的冒泡程序. 转自: ...
- Python中range()函数用法
函数原型:range(start, stop, step) 这里的start和step都是可以缺省的,start缺省状态下默认取值为0,step缺省状态下默认取值为1 几种常见的用法:print(li ...
- python的range()函数用法
再看看list的操作: array = [1, 2, 5, 3, 6, 8, 4] #其实这里的顺序标识是 [1, 2, 5, 3, 6, 8, 4] (0,1,2,3,4,5,6) (-7,-6,- ...
- Python中range函数的基本用法完全解读
range函数大多数时常出现在for循环中,在for循环中可做为索引使用,下面这篇文章主要给大家介绍了关于Python中range函数的基本用法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下 ...
- python中range 函数_pythonrange,range函数的用法
当range()函数内填入第三个参数时,第三个参数表示百步长.函数语法:range(start,stop[,step])参数说明:start:计数从度start开始.默认是从0开始.例知如道range ...
- Python range() 函数用法细解(附猴子吃桃问题引例)
Python range() 函数用法细解 --步入大学,好多计算机系的同学可能专业课学c或者java,但是随着python变成语言的崛起,往往一些学校也会要求学生们学习Python这门编程语言(我们 ...
- python中symbols函数用法_Python基础之函数用法实例详解
本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def, ...
最新文章
- sql server 2005分页存储过程和sql server 2000分页存储过程(摘)
- AI将成科学家“高级定制”工具
- 【原创】Kakfa utils源代码分析(二)
- 使用masonry布局旋转View的问题
- Apollo后台配置:命名空间Namespqce配置及代码读取
- ReentrantLock锁
- 巧用HashSet装载非重数据(洛谷P2250题题解,Java语言描述)
- 十、request.getSession( )、reqeust.getSession(false)和 request.getSession(true)
- DAS 2020 Keynote Speech | Adobe 文档分析技术介绍
- 卷王李富贵算法每日一题--分治算法(四)--循环比赛
- Python 中的json字符串以及使用
- mysql 锁24小时_MySQL中Alter table 不长时间锁表的情况汇总。
- python内建函数(不完全)
- 美国下注15亿美元重点搞芯片!电子复兴5年计划首批入围项目曝光
- mysql使用mybatis删除不生效_解决myBatis中删除条件的拼接问题
- 基于OpenCV与MFC的人脸识别
- 【Java面试】Java面试简历—轻松月薪过w(附赠最全简历模板)
- 《 阿房宫赋》古文鉴赏
- 用数据分析看泰坦尼克号
- CentOS 7 ping不通提示“Name or service not kown“的解决办法
热门文章
- /etc/hosts/中HOSTNAME错误导致lsnrctl启动错误
- 以太坊,EOS和其他DApps的总数达到2,432,但没有大规模采用
- jpg在线合并jpg_JPG如何运作
- HTTP协议中的Range和Content-Range
- (C++)201709-1 打酱油
- STARTUP报错:ORA-00205: error in identifying control file, check alert log for more info
- java http head 请求_http请求头header、请求体body、请求行介绍
- 通过改进算法来优化程序性能的真实案例(Ransac)
- Graphviz样例之无向图
- 设计模式----组合模式UML和实现代码