菜鸟教程python3循环语句_详细记录python的range()函数用法|python3菜鸟教程
使用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--
菜鸟教程python3循环语句_详细记录python的range()函数用法|python3菜鸟教程相关推荐
- 详细记录python的range()函数用法
详细记录python的range()函数用法 使用python的人都知道range()函数很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节.这里记录一下range(),复习下list的sl ...
- python的for循环语句_干货丨Python的循环语句基础讲解!
我们知道计算机程序语言一般是按照顺序执行的,那么编程语言就提供了各种控制结构,允许更复杂的执行路径,其中循环语句的作用就是允许我们执行一个语句或语句组多次. 在Python中循环语句的类型主要有以下几 ...
- python3 进度条_详细介绍Python进度条tqdm的使用
前言 有时候在使用Python处理比较耗时操作的时候,为了便于观察处理进度,这时候就需要通过进度条将处理情况进行可视化展示,以便我们能够及时了解情况.这对于第三方库非常丰富的Python来说,想要实现 ...
- python获取系统时间函数_简单记录python的时间函数操作
1. time和datetime模块 import datetime,time 2. 获得当前时间 time.time() #获得当前时间,返回float型 time.localtime([float ...
- python class函数报错_如何掌握python中class函数用法?
虽然大家都知道class是什么,也都知道自己在写代码时候怎么去使用这个功能,但是如果说,想让大家利用class去写一个help大家知道吗?作为一个代码老司机,不得不跟大家说明,好的代码编写一定是靠基础 ...
- python3菜鸟教程-Python3 循环语句
Python3 循环语句 本章节将为大家介绍 Python 循环语句的使用. Python 中的循环语句有 for 和 while. Python 循环语句的控制结构图如下所示: while 循环 P ...
- python教程循环语句,Python基础教程之循环语句(for、while和嵌套循环)
循环可以用来重复执行某条语句,直到某个条件得到满足或遍历所有元素. 1 for循环 是for循环,可以把集合数据类型list.tuple.dict.set的元素遍历出来. (1)对list进行循环 c ...
- python编程循环语句_循环语句—Python编程从入门到精通(5)
第6章.循环语句 在本书上一章的内容中,我们学习了实现条件判断功能的条件语句,让程序的执行顺序发生了变化.为了满足循环和跳转等功能,本章将详细讲解Python语言中循环语句的知识,主要包括for循环语 ...
- Shell编程之循环语句(详细讲解以及脚本案例)
Shell编程之循环语句(详细讲解以及脚本案例) 文章目录 一.for语句的结构 (一).for语句应用实例 1.示例1--批量添加用户 2.示例2--使用根据IP地址检查主机状态 3.示例3--fo ...
最新文章
- grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)
- mysql集群安装配置
- 线程介绍,异步,对象锁
- spark on yarn 完全分布式_Apache Spark探秘:三种分布式部署方式比较
- 超全的Android组件及UI框架
- python人脸识别环境搭建_怎样用3分钟搭建 Python 人脸识别系统
- Java快速入门-01-基础篇
- LoadRunner解决“服务器正在运行中”方法
- PAT乙级 1003
- mysql innodb 索引组织表_Mysql InnoDB引擎 -索引组织表
- mysql 添加实例_如何在多实例基础上再添加一个mysql的实例
- Windows | 常用软件
- 什么是数据中心虚拟化?
- 微信小程序详细图文教程10分钟解决
- 【机器学习】SVM核方法
- u盘安装linux戴尔boot设置,戴尔笔记本电脑怎么设置u盘启动|dell新机型bios设置usb启动步骤...
- 已解决urllib.error.HTTPError: HTTP Error 403: Forbidden
- 企业要如何建立适合自己的PMF?
- eggs和egg是什么意思_egg是什么
- 后端/Java/大数据/C++ 校招内推面经
热门文章
- 苹果M1「徒有其表」?「地表最强」芯只能剪视频引知乎热议
- RuntimeError: grad can be implicitly created only for scalar outputs的原因:Pytorch不支持对张量的求导
- Ubuntu 安装libjpeg-turbo库
- DenseNet详细解读
- Springboot2模块系列:securityoauth2(Token安全认证)
- 计算机中文件可以重名吗,如何快捷找出电脑内的重复文件(两个工具)
- 定义一个用来和老师打招呼的方法。
- Julia 基于Flux深度学习框架的cifar10数据集分类
- vue.js项目中配置mapbox可视化地图api
- Mac系统安装Navicat Premium数据库与汉化