零py-(ep-09)
分支与循环:1、分支:if语句
1.1、if管控其缩进部分的所有代码
1.2、判断多个条件:if-elif 注意:elif为“否则就判断”,即:当if条件不成立时,才判断elif
1.3、if-elif-else:上面所有条件均不成立的情况下,执行某个代码块注意:else if elif 三者后面都要加冒号
2.1、python中计算分数要把 分数变小数!不能用%来计算,%是求余的!
2.2、Python 是通过缩进来检测代码块的,向右缩进相同距离的所有语句,都同属于一个代码块,相同距离即可,不要求几个空格
2.3、print(number, "是一个奇数。",sep='') 在打印输出时,python默认用空格将每个逗号部分分开,加上sep='',可以将间隔变无
3.1、if-else的条件表达式结构:条件成立要执行的语句-if-条件表达式-else-条件不成立要执行的语句
3.2、注意 在条件表达式形式时 可以给一整段代码加()小括号,来区分
3.3、python通过缩进区分代码块
3.4、任何非空字符串的测试结果均为true
3.5、条件分支和and/or运算符可以相互转换 :
3.6、" // "表示整数除法,返回值是一个整数
2、循环:
while循环:
2.1、 break语句用来跳出循环体,不管后面还是否有未执行的程序;continue跳出本轮循环,回到循环体的条件判断位置,继续下一次循环判断
2.2 、while-else结构:else当判断条件不成立时才执行else后面的语句。else是用来对付break的,即使break退出了整个循环,也不会无脑执行else后面的语句.while-else 可以非常容易地检测到循环的退出情况
2.3、break和continue每次只跳出一层循环
2.4、注意:使用 input 函数获取的是一个字符串结果,如果做计算的话,要转换成整数形式int
2.5、// 为整数除
2.6、寻找10以内的素数:
j=2 #判断10以内的素数,从2开始判断 素数:除了1和其本身不能被其他任何数整除的数
while j<10 :#控制j在10以内 外层循环控制 待判断的数值
i=2 #i为从2到9的数,用来被遍历
while i<j :#当i<j即避免了与自身判断的情况 内层循环用来对每个j进行遍历
ifj%i==0:#判断对于每一个j来说,遍历的i是否能够整除
print(j,"=",i,"*",j//i) #若能整除直接输出表达式,注意//为整除除法
break #如果上一步已经判断是非素数,应该直接换下一个数进行判断,所以直接跳出内层循环,执行j+=1
i+=1 #如果不能整除,则迭代下一个i,继续进行下次内循环
else:
print(j,"是一个素数")#内循环都结束后,遍历完成,顺利渡劫成功,可确认是素数
j+=1 #在外层循环中,内层循环结束,换成下一个j,继续判断
for循环
3.1 、格式: for 变量 in 可迭代对象: (可迭代:指的是可以单独拎出来的对象,字符串、数组)for循环 每次将迭代对象的每一个拿出来赋值给变量
3.2、range(stop):变量从0开始的、range(start,stop):变量从start-stop-1、range(start,stop,step) :步进还可以是负数其参数均为整型
3.3、for循环仍然可以嵌套,用break 和continue语句
3.4、for循环判断素数:
#判断10以内的素数,从2开始判断 素数:除了1和其本身不能被其他任何数整除的数
for j in range(2,10) :
for i in range(2,j) :
ifj%i==0:
print(j,"=",i,"*",j//i)
break
else:
print(j,"是一个素数")
3.5、水仙花
for i in range(100,1000):
a = i//100
b = (i-a*100)//10
c = (i-a*100-b*10)
if i == a*a*a+b*b*b+c*c*c :
print(i,"是水仙花s")
else:
continue#注意continue才是 仅跳出一层循环
#水仙花作者
for i in range(100,1000):
sum = 0 #sum是用来计算各个位数的立方和的
temp = i #temp是为了防止污染原数据
while temp: #只要temp是有效非零数据则开始下面的分解
sum = sum + (temp%10)**3 #通过分别取出其个位十位百位数字,temp%10 取出个位数字,计算其3次方 **表示求指数
temp = temp//10 #temp//10 是将123变成12,去除个位的操作,在经过循环,求得12个位2
if sum == i:
print(i)
3.6、len() 函数的参数需要是一个序列或者集合(才能够获取长度嘛),整数是不能作为其参数的,so,len(1254)会报错
3.7、#回文:key 搭配使用求余数运算符(%)和整除运算符(//)
x = int(input("请输入一个正整数:"))
if x < 0 or (x % 10 ==0 and x != 0):#首先判断复数不是回文,非零的结尾是0的数字也不是回文,先把错误范围排除掉
print("不是回文数")
else:
re = 0 #re是用来存放x的倒叙数字的
while x > re :#根据规律只需要探究前半的数字部分即可
re = re*10 + x%10 #每次的re×10,x取一个个位
x = x//10
if x == re or x == re//10 :#分为x是奇数还是偶数的情况
print("是回文")
else:
print("不是回文")
页:
[1]