一、while循环补充说明

1、死循环

 while+条件:
# 在条件不改变且一直为真时 while会陷入死循环,在我们执行一些较大的运算流程时,while会使我们的CPU占用率急速升高,甚至会使电脑死机、重启

2、嵌套及全局标志位

​ 在我们使用while循环时,通常可使用break结束循环,但break只能结束他所在那一层的循环,在我们使用while嵌套时,想要一次性结束,就应该有几个while,就要写几个break。

​ 由于使用while嵌套时,需要反复地写break来关闭循环,这时我们可设置一个全局标志位,在条件达到时,触动开关type,来一次性关闭循环

is_bool = True  # 设置一个全局标记开关
while True: # 设置一个循环,绑定开关
if 条件1: # 条件1成立后,向下执行
while true: # 嵌套一个循环,绑定开关
if 条件2 # 条件2成立后,继续向下执行
is_bool = False # 触动开关,结束循环
else:
条件2不成立执行
else :
条件1不成立执

二、for...循环

1、for...循环特点

​ 相比于while循环,for循环有以下特点

  • 擅长遍历取值

​ 遍历取值:指在可在列表、字典、元组、集合等数据值库中,依次取值,类似于索引

  • 不需要结束,可自动结束循环
  • for循环体代码在执行中,遇到break也会直接结束整个循环
  • for循环体代码在执行中,遇到continue也会结束当前循环,重新开始下一次循环

2、for...循环语法结构

for 变量名 in 待遍历的数据:
# 待遍历完成后自动结束循环
liest_int = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # 设置一个数据值库
for i in liest_int: # 遍历列表中数据值
print(i) # 将列表中数据值依次打印

三、range方法

1、什么是range

  • range可以简单的理解为,能够便捷的帮我们生成一个数据值库
range(100):  # 生成一个从0开始,99结束的数据值库
range(10, 100) # 生成一个起始为10,99结束的数据值库
range(1,100,3) # 第三个数为等插值,不写默认为1

2、不同版本python,range区别

在python2中:
range()
直接生成一个列表,内部含有多个数据值
xrange()
其实就是python3中的range
在python3中:
range()
类似于一个工厂,不会占用空间,需要时生产



3、range实战使用

网络爬虫
可使用range特性,来进行网络爬虫,读取我们需要的数据
项目需求
爬取所有页面内容 (豆瓣)
寻找规律
https://movie.douban.com/top250
https://movie.douban.com/top250?start=25&filter=
https://movie.douban.com/top250?start=50&filter=
https://movie.douban.com/top250?start=75&filter= 大胆猜测:第一页是 https://movie.douban.com/top250?start=0&filter=
编写代码产生豆瓣10页的网址
https_douban = 'https://movie.douban.com/top250? start=%s&filter= '
for i in range(0, 250, 25):
print(https_douban % i) '''
分页的规律 不同的网址有所区别
1.在网址里面有规律
2.内部js文件动态加载
'''

练习题


1.计算1-100所有的数之和 答:
count = 0 # 设置一个为0的基数
for i in range(0,101): # 遍历出0-100的数
count += i # 从0开始相加
print(count) # 得出答案为5050 2.判断列表中数字2出现的次数
l1 = [11,2,3,2,2,1,2,1,2,3,2,3,2,3,4,3,2,3,2,2,2,2,3,2]
答:
# 2.判断列表中数字2出现的次数
count = 0 # 设置一个从0开始的基数
l1 = [11, 2, 3, 2, 2, 1, 2, 1, 2, 3, 2, 3, 2, 3, 4, 3, 2, 3, 2, 2, 2, 2, 3, 2]
for i in l1: # 遍历变量名l1中的数据值
if i == 2: # 当数据值等于2时,记录一次
count += 1 # l1中数据值为2时 基数加1
print(count) # 打印2出现的次数为13 3.编写代码自动生成所有页网址(注意总共多少页)
https://movie.douban.com/top250
答:
寻找规律
https://movie.douban.com/top250
https://movie.douban.com/top250?start=25&filter=
https://movie.douban.com/top250?start=50&filter=
https://movie.douban.com/top250?start=75&filter= 第一页是:https://movie.douban.com/top250start=0&filter=
编写代码产生豆瓣10页的网址
https_douban = 'https://movie.douban.com/top250? start=%s&filter= '
for i in range(0, 250, 25):
print(https_douban % i) 4.编写代码打印出下列图形(ps:for循环嵌套)
*****
*****
*****
*****

Python基础部分:8、for循环和range的使用的更多相关文章

  1. 『Python基础-7』for循环 & while循环

    『Python基础-7』for循环 & while循环 目录: 循环语句 for循环 while循环 循环的控制语句: break,continue,pass for...else 和 whi ...

  2. Python基础之条件和循环

    阅读目录 一.if语句 1.1功能 1.2语法 1.2.1:单分支,单重条件判断 1.2.2:单分支,多重条件判断 1.2.3:if + else 1.2.4:多分支if + elif +else 1 ...

  3. Python基础(2)——循环和分支[xiaoshun]

    一.瞎扯 世界上一切的系统都可以被'分支'表示.循环也是分支,只不过又重复之前的'分支'选择罢了.程序如人生,每一次的'分支',每一次的选择,都会有不同的结果: 有的选择止步不前,无限循环: 有的选择 ...

  4. Python基础数据类型与for循环

    数据类型:int,bool,str,list, tuple元组,dict字典. 1.数字:12,3,4 在使用print打印数字时,在终端界面中无法判断出打印的是什么类型,当我们需要知道一个值是什么类 ...

  5. Python基础7- 流程控制之循环

    循环: 把一段代码重复性的执行N次,直到满足某个条件为止. 为了在合适的时候,停止重复执行,需要让程序出现满足停止循环的条件.Python中有三种循环(实质只有两种): while循环 for循环 嵌 ...

  6. Python基础(条件判断和循环) if elif else for while break continue;

    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...

  7. Python基础、判断、循环、列表、字典,day1

    一.Python 简介 1.介绍 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标 ...

  8. 【Python基础】之for循环、数组字典

    一. for循环实例 1.循环字符串 Python Shell: for i in "hello": print(i) h e l l o 2.循环数组Python Shell: ...

  9. python 基础之while无限循环

    用户登录程序 username = "chenxi" passwed = "testki" counter = 0 while counter < 3: ...

  10. python基础学习 str,list,dict,set,range,enumerate

    一.字符串 s = 'python' s1 = 'python' + 'learn' #相加其实就是简单拼接 s2 = 'python' * 5 #相乘其实就是复制自己多少次,再拼接在一起 字符串切片 ...

随机推荐

  1. JWT漏洞学习

    JWT漏洞学习 什么是JWT? JWT是JSON Web Token的缩写,它是一串带有声明信息的字符串,由服务端使用加密算法对信息签名,以保证其完整性和不可伪造性.Token里可以包含所有必要的信息 ...

  2. 【MySQL】从入门到掌握4-主键与Unique

    上期:[MySQL]从入门到掌握3-WorkBench 第一章:主键 在实际开发中,我们不会使用用户名字当作主键.   因为当我们用数据库记录学生信息的时候,学生有可能重名! 我们一般会使用是个int ...

  3. 【java】学习路线5-public和private、构造方法、this关键字、封装对象、static关键字、main方法结构解析

    //一个教务管理系统//知识点清单/*public & private 的区别一个是公开的,一个是私有的,作用域不一样,访问的权限不一样咯如果是用private修饰,则调用者只可以是在当前的作 ...

  4. Html飞机大战(三):定义状态

    好家伙, 1.为飞机大战定义状态 1.开始 START 有一个飞机大战LOGO &天空 2.开始时 STRATING 有一个飞机加载的界面&天空 3.运行时 RUNNING 我方飞机& ...

  5. 通过VS下载的NuGet包,如何修改其下载存放路径?

    一.了解NuGet包的默认存放路径 我们通过NuGet包管理器下载的引用包,默认是存放在C盘的,存储路径一般是: C:\Users\{系统用户名}\.nuget\packages 我们都知道,C盘的存 ...

  6. Windows编程之线程

    本笔记整理自:<Windows核心编程(第五版)> 目录 何为线程 线程的开始和结束 创建线程 终止线程 线程运行时的调度和线程优先级 挂起(暂停).恢复与睡眠 挂起 恢复 睡眠 线程切换 ...

  7. 华南理工大学 Python第7章课后小测-1

    1.(单选)以下程序对字典进行排序,按字典键值从小到大排序,空白处的代码是(  ): dt={'b':6, 'c':2, 'a':4} s=sorted(dt.items(),key=_____) p ...

  8. Linux配置系统yum源

    首先是需要你把需要使用的镜像挂载到系统上面,可以通过cd /dvd添加也可以直接上传到系统上 本文档是上传到系统上进行挂载 操作系统:Red Hat 7.6 挂载镜像:Red Hat 7.6 1.挂载 ...

  9. MQ的消息丢失/重复/积压的问题解决

    在我们实际的开发过程中,我们肯定会用到MQ中间件,常见的MQ中间件有kafka,RabbitMQ,RocketMQ.在使用的过程中,我们必须要考虑这样一个问题,在使用MQ的时候,我们怎么确保消息100 ...

  10. 第六章:Django 综合篇 - 14:Django 日志

    Django使用Python内置的logging模块实现它自己的日志系统. 如果你没有使用过logging模块,请参考Python教程中的相关章节. 直达链接<logging模块详解>. ...