April 18th_day04_cricle
record
运算符:比较、逻辑、赋值
,<,==,!=,>=,<=
and,or,not
=,+=,-=,=,/=,//=,%=,*=
if
数字类型:int,float,bool,complex
基数、表示方式:0b,0o,0x
转换:bin,oct,hex
科学计数法:3e2 == 310*2
True->1,False->0
python中循环结构有两种:for循环和while循环
1.循环的作用:让部分操作重复执行
2.怎么使用for循环:
2.1语法
for 变量 in 序列:
循环体
2.2.说明
2.2.1.for、in:关键字,固定写法
2.2.2.变量:变量名,需要满足变量名的要求
2.2.3.序列:容器类型的数据,python中常见的序列:字符串、列表、元祖、集合、字典、迭代器、生成器、range
2.2.4.“:”:固定写法
2.2.5.循环体:和for保持一个缩进的一条或者多条语句。(需要重复执行的代码)
2.3.执行过程
让变量去序列中取值,一个一个的取,取完为止;每取一个值执行一次循环体。
(序列中数据的个数,决定了循环的次数)
3.range函数
range是python内置的一个用来生成数字序列的函数,在python2.x中range由xrange代替
作用:结合for循环控制循环次数;
结合for循环产生指定范围的数字序列;
range(N) - 产生数字范围:0~N-1 (这的N任意的正整数)
for i in range(10):
print(i,end="")
#0123456789
range(M,N) - 产生数字范围:M ~ N-1(这的M和N是整数,且N>M)
for i in range(-10,0):
print(i,end="")
#-10-9-8-7-6-5-4-3-2-1
range(M,N,step) - 产生数字范围:M ~ N-1,每次增加step
练习1:使用for循环计算1+2+3+……+100
sum = 0
for i in range(101):
sum += i
print(sum)
练习2:水仙花数
array_1 = []
array_2 = []
length = 0
for i in range(100,10000):
array_1 = list(str(i))
length = len(array_1)
sum = 0
for x in range(0,length):
sum = sum + int(array_1[x]) ** length
if sum == i:
array_2.append(i)
elif sum != i:
pass
print("水仙花数有:",end="")
for i in range(0,len(array_2)):
print(array_2[i],end=" ")
print("\n")
#水仙花数有:153 370 371 407 1634 8208 9474
4.while
4.1.怎么使用while
4.1.1.语法
while 条件语句:
循环体
4.1.2说明
while - 关键字,固定写法
条件语句 - python支持的类型的数据、已经声明过的变量、除了赋值以外的运算表达式
“:”:固定写法
循环体 - 和while保持一个缩进的一条或者多条语句
4.1.3.执行过程
先判断条件语句是否为True,如果为True就执行循环体;
执行完循环体再判断条件语句是否为True,如果为True又执行循环体;
依次类推,直到条件语句结果为False,循环就结束,直接执行循环后面的其他语句
5.for循环和while循环
for循环能做的事情while循环都可以做;while能做的事情for循环不一定能做到
循环次数确定的时候用for循环;循环次数不确定的时候用while循环、死循环用while循环
5.break、continue、else
5.1.continue
continue是循环体中的关键字,用来结束当次循环
当执行循环体的时候遇到了continue,档次循环结束,循环体中continue后面的语句不再执行。直接进入下次循环的判断
5.2.break
break是循环体中的关键字,用于直接结束整个循环
当执行循环体的时候遇到了break,整个循环直接结束,程序直接执行循环后面的其他语句
5.3.else
5.3.1.for的完整结构
for 变量 in 序列:
循环体
else:
代码块
其他语句
5.3.2.while的完整结构
while 条件语句:
循环体
else:
代码块
其他语句
当循环自然死亡,else后面的代码块会执行;
如果循环是因为遇到了break而结束的,else后面的代码就不会执行
应用:可以通过else来检测循环有没有遇到break