20210531 start
今天目标:
接着上次 弄清楚 循环遍历 里面break 和continue 的关系——也许教程讲得不够全面和准确,也许需要辅助专业教程?
梳理这几种高级数据类型的 循环、增加、删除等操作,列清楚
再看看 打印符号怎么换行
range(a,b)——【a,b)
range(0,5)——自动生成一个[0-5)的 整数序列(是有顺序的,0,1,2这样升序)
作用——可以作为 计数器——帮助重复次数(或者累加次数?)
for i in range(3):
print('学习python很开心')
——
for与while 循环
for i in "你好中国":
print(i)
空房间,依次进入,办事,最后一个留在房间中
while while True:
循环条件中的变量要有一个初始值( i=1 ),不然Python不认识它就会报错;
每次循环都要改变循环条件中的变量( i += 1),不然循环条件会一直满足,发生死循环。
案例中 数值i还是字符串i?——本案例都可以显示
i = 0 # 定义了一个变量a
while i < 11: # 当a小于11的时候,就自动执行后续缩进部分的语句
print('现在i的值是:{}' .format(i))
#加一个print看看现在的i是多少
i = i + 1 # 每执行一次循环,变量a的值都加1
print('加1后i的值是:{}' .format(str(i))
#加一个print看看加1后的i是多少
print(i)
100以内奇数——% 获得除法运算的余数
for法
for i in range(0,100):
if i%2==1:
print(i)
while方法
i=0
while i<100:
if i%2==1:
print(i)
i=i+1
混合法
for i in range(0,100):——此处的i 其实不受while里面的控制,只是按顺序做计数器用,跟具体业务没关系
print('此时i是多少?'.format(i)
while i%2==1:—— 此时wihle其实是扮演了条件判断的角色 If
print(i)
i+=1(这句多余?)
——有没有这句,结果一样吗?1增加了之后i变成2,此时for里的变成2还是——测试一下改成每次+0.5/+5(看后面结果)
完全不多余!!! 不然会陷入死循环。
print('现在i是{}'.formati)
尝试结果
一个一个增加的吗?0
一个一个增加的吗?1
发现一个奇数1
一个一个增加的吗?2
一个一个增加的吗?3
发现一个奇数3
一个一个增加的吗?4
一个一个增加的吗?5
发现一个奇数5
一个一个增加的吗?6
一个一个增加的吗?7
过7(7的倍数——目前,带7的怎么办,100以内的要求)
for法
numinput=int(input('some num.\n'))—— 注意input输入是字符串,int转换数字,range才能用
for i in range(1,numinput+1):——这里忘记 +1了
if i%7==0:
print('pass')
else:
print(i)
while法
a=0
numinput=int(input('input some num.\n))
while a<numinput+1:
if a%7==0:
print('pass')
else:
print(a)
a+=1
混合法
numinput=int(input('some num.\n'))
for i in range(1,numinput+1):
while i%7==0:
print('pass')
i+=1
print(i)
过7(100以内,7倍数+带7)——地板除// 取余% ,
for法
numinput=int(input('some num.\n'))
for i in range(1,numinput+1):
if i%7==0:
print('pass')
elif i//10==7:
print('pass')
elif i%10==7: #这个难想到 *7
print('pass')
else:
print(i)
while法
a=0
numinput=int(input('input some num.\n'))
while a
if a%7==0:
print('pass')
elif a//10==7:
print('pass')
elif a%10==7: #这个难想到 *7
print('pass')
else:
print(a)
a+=1
混合法
numinput=int(input('some num.\n'))
for i in range(1,numinput+1):
while i%7==0: # 因为把while当作 if来用,所以这种时刻体现 while这种方式有点麻烦了。——还不如直接用if else 法
print('pass')
i+=1
while i//10==7:
print('pass')
i+=1
while i%10==7:
print('pass')
i+=1
print(i)
20210531end——py复盘
未完成
今天目标:
接着上次 弄清楚 循环遍历 里面break 和continue 的关系——也许教程讲得不够全面和准确,也许需要辅助专业教程?
梳理这几种高级数据类型的 循环、增加、删除等操作,列清楚
再看看 打印符号怎么换行
收获
for 循环中i的作用,其实是 根据序列走的,取序列的值,不是随着循环语句内的变化——这是之前没有深刻意识到的
range 是生成一个序列,序列可以用来做计数器用(重复n次)
while其实有时候可以扮演 if的角色,但当条件判断超过2条的时候,用if elif else 更简洁一些
while a< 100,就是找100以内(不含100)的数,看首尾
while里,注意要使用i+ 的方法,以免死循环
//地板除,%取余数——过7的玩法很锻炼,多种情况
input拿到的是str,range需数值,所以range(1,int(input_num)+1)—— 转换数据类型
接下来:
5个回文数字的 练习(地板除等运用)
break continue 循环跳出 原理or标志点是什么
网友评论