for循环结构、range方法
今日内容总结
whlie补充说明
1、死循环
真正死循环是一旦执行 CPU功耗会急速上升 直到系统采取紧急措施
尽量不要让CPU长时间不断运行
2、whlie循环嵌套
重点:一个break只能结束他所在的那一层循环
重点:有几个while的嵌套 想要一次性结束 就得写几个break
重点:如果不想反复写break 可以使用全局标志位 牵一发而动全身
eg:
is_flag = True
while is_flag:
user = input('user>>>>:')
pwd = input('pwd>>>:')
if user == 'jason' and pwd == '123':
while is_flag:
choice = input('请输入您的指令>>>:')
if choice == 'n':
is_flag = Flase
print('正在执行你的指令:%s' % choice)
else:
print('用户名或密码错误')graph TB
A(is_flag = true)-->B(输入用户名和密码)
B-->C(判断用户名和密码是否正确)
C-->D(正确进入循环判断指令)
C-->E(错误回到while条件判断处)
D-->F(有q )
F-->K(将is_flag = Flase退出 条件不成立)D-->G(没有q 循环并打印指令)
E-.->Bfor循环结构
for循环的能够做到的事情while都能做到 而for的循环语法更加简洁 并且在循环取值问题上更加方便
1、语法结构
for 变量名 in 带遍历数据:
for循环体代码
eg:
res = ['jason', 'marry', 'kevin', 'tony'] # 待遍历数据
循环打印出res中的每一个数据值
while方法:
count = 0
while count < 4:
print(res[count])
count += 1
for方法:
for i in res:
print(i)
for循环的特点:
1、擅长遍历取值
2、不需要结束条件 遍历完自动结束
for循环结构中的变量名如何命名:
1、见名知意
2、如果遍历出来的数据值没有具体意义 可以使用常用的 i j k item v 来指代变量名
for循环的主要遍历数据类型有(常见的有:字符串、列表、元组、字典、集合)
eg:
l1 = 'jason'
for i in l1:
print(i) # 打印出来的是单个单个字符
num_dict = {'name': 'jason', 'pwd': 123}
for i in nmu_dict:
print(i) # 打印出来的只有键2、for+break
在循环体代码中如果执行到break也会结束整个for循环
eg:
res = ['jason', 'kevin', 'oscer', 'marry']
for i in res:
print(i)
if i == 'kevin':
break
3、for+continue
在循环体代码中如果执行到continue也会结束当前循环直接开始下一次循环
eg:
res = ['jason', 'kevin', 'oscer', 'marry']
for k in res:
if k == 'oscer':
continue
print(k)
range方法
1、range的3个使用方法
range可以理解为是帮我们产生一个内部含有多个数字的数据 第一种:一个参数 从0开始 顾头不顾尾
for i in range(10):
print(i) # 打印出来的是0 1 2 3 4 5 6 7 8 9
第二种:两个参数 自定义起始位置 顾头不顾尾
for i in range(1, 10):
print(i) # 打印出来的是1 2 3 4 5 6 7 8 9
第三种:三个参数 第三个数字为等差值 默认不写为1
for i in range(1, 10, 2):
print(i) # 打印出来的是1 3 5 7 9
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= 第四页
base_url = 'https://movie.douban.com/top250?start=%s&filter= '
for i in range(0, 250, 25):
print(base_url % i)
2、range在Python2与python3的不同
Python2中:
range() # 它产生的是一个列表 内部含有多个数值
xrange() # 其实就是python3中的range

python3中:
range() #类似一个工厂 不会占用多大的空间 要的话就生产

练习
1、计算出1-100所有的数之和
# 引入计数器
num_count = 0
for i in range(1, 100):
# num_count = num_count + i
num_count += i
print(num_count)
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]count = 0
for k in l1:
if k == 2:
count += 1
print(count)
3.编写代码自动生成所有页网址(注意总共多少页)
https://movie.douban.com/top250https://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=
base_url = 'https://movie.douban.com/top250?start=%s&filter='
for v in range(0, 250, 25):
print(base_url % v)
4、编写代码打印出下列图形(ps:for循环嵌套)
# *****
# *****
# *****
# *****
for i in range(4):
for k in range(5): #print("*****",end="")
print('*', end='')
print()
5.时间进度条
import time
"""
1,\r 一般用在print()中对要打印的结果做格式化处理, 表示将光标的位置回退到本行的开头位置。
2,其中end="",表示不换行
3,其中%s,格式化进行输出,位置进行预留,这里预留了50个字符
"""
list1 = [12,23,34,45,56,67,78,89]
j = 1
leng = len(list1)
for i in list1:
time.sleep(0.5)
percent = j / leng
strvar = int(percent * 50) * "#"
print("\r[%-50s] %d%%" % (strvar, percent * 100), end="")
j += 1
for循环结构、range方法的更多相关文章
- Bash的循环结构(for和while)
在bash有三中类型的循环结构表达方法:for,while,until.这里介绍常用的两种:for和while. for bash的for循环表达式和python的for循环表达式风格很像: for ...
- for循环及range内置方法
目录 while循环补充说明 流程控制之for循环 range方法 rang实战案例 作业 """ 1.先写注释(思维逻辑和想法) 2.先考虑主体功能 在考虑附加功能 & ...
- C语言入门7-程序设计方法基础-循环结构
程序设计方法基础-循环结构 循环三要素: 初值 循环判断条件 步长(循环增量) 循环结构在有些书籍上也称为重复结构, 即反复执行某一部分的操作. 循环三要素: 初值 循环判断条件 步 ...
- for循环结合range使用方法
range概念:表示一个数据范围 基本的语法格式:range(开始数据,结束数据(不包括结束数据),步长) 记住一个公式:下一个数据=开始数据+步长 步长:表示的是数据前后的间隔 OK,基本的概念和语 ...
- Java基础语法Day_02-03(数据类型、运算符、方法、循环结构)
第5节 数据类型转换 day02_01_数据类型转换_自动转换 day02_02_数据类型转换_强制转换 day02_03_数据类型转换_注意事项 day02_04_ASCII编码表 第6节 运算符 ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
- Python学习:命令行运行,循环结构
一.安装配置和运行方法 1.安装OpenCV 3.1: 假设安装目录为"C:\Python34" 2.配置环境变量: 方法一:直接配置:打开"控制面板",搜索& ...
- python中的循环结构等相关知识
==分支结构== 1.单分支:一般用于只会发生一种情况的场景,if #90以上优秀 score=95 if score>90: print("优秀") 2.双分支:一般用于会 ...
- Python编程基础:循环结构
一.为什么要用循环 现在有一个任务,要求你输出一百遍"好好学习,天天向上!",想一想,你会怎么做? (一)老老实实的笨方法 print("第1遍写:好好学习,天天向上!& ...
随机推荐
- echarts BAR堆叠图显示百分比
在使用echarts的堆叠图时,我们鼠标悬停的浮窗里的信息可能并不是我们想要的信息,这个时候需要我们配置一下,因为堆叠图的trigger的类型是坐标轴触发的,数据是多组数据,所以我们需要遍历一下数据, ...
- NSIS限制程序运行次数和使用日期
#七八年前写着玩的小东西,实际用途不大,但对刚接触nsis的新手来说应该还有一些帮助,包括创建控件,获取系统时间等,与诸位共勉! !system '>blank set/p=MSCF<nu ...
- SECS半导体设备通讯-3 SECS-II通信标准
一 SECS-II 概述 SECS-II 标准定义了使用如SECS-I.HSMS等传输协议在设备和主机之间交换的消息的形式和含义. 定义了以消息的形式在设备和主机之间传递信息,消息按其行为分类,称为S ...
- Java程序设计(二)作业
题目1:输入一个三位十进制数,对其每一位进行筛选,逆序组合后输出. package test; import java.util.*; public class test2{ public stati ...
- 华为路由器OSPF配置常用命令
OSPF单区域配置 ospf 1 进入ospf视图1代表进程号 area 0 创建区域并进入OSPF区域视图,输入要创建的区域ID,骨干区域即区域0 network +IP +匹配码 display ...
- IDEA插件MyBatisCodeHelper-Pro的破解与使用
0.前言 本文中的IDEA版本是2020.3,使用的插件版本是MyBatisCodeHelper-Pro 2.8.9,3.0+版本目前没找到激活的方式 和本文插件类似的还有mybatisX,但我不喜欢 ...
- Android 13 新特性及适配指南
Android 13(API 33)于 2022年8月15日 正式发布(发布时间较往年早了一些),正式版Release源代码也于当日被推送到AOSP Android开源项目. 截止到笔者撰写这篇文章时 ...
- Ubuntu 下安装 redis 并且设置远程登陆和密码
安装redis sudo apt-get install -y redis-server 更改配置 sudo vim /etc/redis/redis.conf 如果不知道怎么找 直接在命令行模式下输 ...
- vim常用快捷键总结一(光标移动命令)
vim编辑器的工作模式分为3种即(命令模式,编辑模式和尾行模式),具体定义这里就不在赘述了,这里只简单介绍各工作模式下对应的操作和快捷方式. 通常来说三三种模式功能划分大致如下 命令模式:定位.翻页. ...
- Go语言核心36讲20
在上两篇文章中,我主要为你讲解了与go语句.goroutine和Go语言调度器有关的知识和技法. 内容很多,你不用急于完全消化,可以在编程实践过程中逐步理解和感悟,争取夯实它们. 现在,让我们暂时走下 ...