使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节。这里记录一下range(),复习下list的slide,最后分析一个好玩儿的冒泡程序。

转自:http://www.cnblogs.com/buro79xxd/archive/2011/05/23/2054493.html

这里记录一下:

>>> 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 ifor j in range(0, i):print jif 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()函数一句就能搞定.......

转载于:https://www.cnblogs.com/PeterZhang1520389703/p/7660609.html

(转)python的range()函数用法相关推荐

  1. 详细记录python的range()函数用法

    详细记录python的range()函数用法 使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节.这里记录一下range(),复习下list的sl ...

  2. python range函数返回的是什么,python中range函数用法是什么

    python中range函数用法:[range()]函数可创建一个整数列表,一般用在for循环中,函数语法为[range(start, stop[, step])],其中start是开始计数,stop ...

  3. Python中range()函数用法

    函数原型:range(start, stop, step) 这里的start和step都是可以缺省的,start缺省状态下默认取值为0,step缺省状态下默认取值为1 几种常见的用法:print(li ...

  4. 菜鸟教程python3循环语句_详细记录python的range()函数用法|python3菜鸟教程

    使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节.这里记录一下range(),复习下list的slide,最后分析一个好玩儿的冒泡程序. 这里记 ...

  5. 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,- ...

  6. python中range 函数_pythonrange,range函数的用法

    当range()函数内填入第三个参数时,第三个参数表示百步长.函数语法:range(start,stop[,step])参数说明:start:计数从度start开始.默认是从0开始.例知如道range ...

  7. Python range() 函数用法细解(附猴子吃桃问题引例)

    Python range() 函数用法细解 --步入大学,好多计算机系的同学可能专业课学c或者java,但是随着python变成语言的崛起,往往一些学校也会要求学生们学习Python这门编程语言(我们 ...

  8. Python中range函数的基本用法完全解读

    range函数大多数时常出现在for循环中,在for循环中可做为索引使用,下面这篇文章主要给大家介绍了关于Python中range函数的基本用法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下 ...

  9. python Pool常用函数用法总结

    在本篇内容里小编给大家整理的是一篇关于python Pool常用函数用法总结内容,有需要的朋友们可以学习下. 1.说明 apply_async(func[,args[,kwds]):使用非堵塞调用fu ...

最新文章

  1. 【ACL 2020】腾讯AI Lab解读三大前沿方向及入选的20篇论文
  2. 把时间当作朋友(四)
  3. CodeForces - 1543D1 RPD and Rap Sheet (Easy Version)(异或+交互)
  4. 闭包,sync使用细节
  5. mysql按日、周、月、年分别统计数据
  6. GNS3 1.5.2 无法上传文件的解决办法
  7. php7 错误处理,PHP7升级-异常错误处理
  8. Linux之32/64位int、char、int*、char*与空结构体大小
  9. 设计模式之行为类模式大PK
  10. 2020年只有外包公司给面试机会, Why?
  11. linux 桌面共享xfce,漂亮而且轻量级的桌面-----xfce安装
  12. python基于大数据的招聘信息实时数据分析系统的设计与实现
  13. Python 监控linux之dstat
  14. 【8】同步vscode配置和插件【导入导出】、再也不用担心换电脑重新安装插件了
  15. python arp断网攻击_ARP断网攻击的原理与解决方法讲解 | 小马激活官网
  16. 股票涨跌的心理学原理: 过度反应理论
  17. 微信第一个支持小程序版本号与服务器不符,微信功能又又又更新!第一个就让人不淡定…...
  18. 企业邮箱登录入口有哪些?公司邮箱账号怎么登陆更方便
  19. 为什么没有好用的Android游戏引擎?
  20. python传输视频文件_Python视频传输

热门文章

  1. shell中 if条件的格式要求
  2. ocr语种识别_利用OCR图文识别,快速帮你提取文字信息
  3. 恢复系统设置或计算机无法点击进入,win10电脑怎么恢复出厂设置_win10系统恢复出厂设置的方法...
  4. jquert ajax文件 mvc,jquery ajax file upload NET MVC 无刷新文件上传
  5. python历史 用量 预测_用python做时间序列预测七:时间序列复杂度量化
  6. Node中POST请求的正确处理方式
  7. linux中的定时器检测按键,STM32单片机利用定时器实现按键采集
  8. html canvas绘制网格,canvas(七)绘制网格和坐标轴
  9. pat上写java程序_如何运行Java程序和设置CLASSPAT
  10. python docx 替换文字_查找并替换.docx文件中的文本 - Python