- 分支结构
python中的分支结构思想与其他编程语言类似,但是有具有python独特特点的语法结构
num=int(input('输入一个数'))
if num%2==0 :
print(num,'为偶数')
else :
print(num,'不是偶数')
在此例中可以清楚的了解if的语法结构(对比C++)
1、if 条件判断语句中没有括号,是以:结尾
2、在结构中没有{},缩进代表整个结构开始结束
注意点是 语句的缩进
- 梅开二度
判读成绩是否优秀(>=60,<=100)
chengji=int(input('输入一个数'))
if 60 <=chengji<=100:
print(chengji,'为优秀')
if chengji<60 or chengji>100:
print('请输入正确的成绩')
在这个栗子中会发现在python中可以用数学语句实现判断条件。
-
多分支结构
多分支结构就是多次运用 if else 在python中 引用了elif 表示多分支中的else if 。
举个栗子判断成绩的等级([100,90]->A;(90,80]->B;(80,60]->C;(60-0]->D}
chengji=int(input('请输入成绩'))
if 90 <=chengji<=100:
print('为A')
elif 80<chengji<=90:
print('为B')
elif 60 <chengji<=80:
print('为C')
elif 0 <chengji<=60:
print('为D')
else:
print('对不起输入成绩有错误')
在运用elif 时我们常用 else 进行收尾工作,当然不加也可以。
在c++中的多层if 在python 中也适用
chengji=int(input('请输入成绩'))
if 90 <=chengji<=100:
print('为A')
if 80<chengji<=90:
print('为B')
if 60 <chengji<=80:
print('为C')
if 0 <chengji<=60:
print('为D')
if chengji<0 or chengji>100:
print('对不起输入成绩有错误')
在python中还引用了 条件表达式 类似于C++中的三目运算符,
print(x if a<b else y)
如果a < b 就把a 赋值给x 否则 赋值给y
在python 中还有占位函数 pass 其含义为如果条件语句中还没有合适的语句 用 pass 进行占位。
- 循环结构
range()函数
range()函数是内置函数,其返回值为迭代器的值,
r=range(10)
其结果为(0,10)
判断 字符是否在range中
r=range (0,10)
print(2 in r)
其输出结果为 true
range() 函数 : range(A,B,C) 函数中变量分别代表 开始,结束,步长(默认为1)
举个栗子
while a<4:
chengji=int(input('请输入成绩'))
if 90 <=chengji<=100:
print('为A')
if 80<chengji<=90:
print('为B')
if 60 <chengji<=80:
print('为C')
if 0 <chengji<=60:
print('为D')
if chengji<0 or chengji>100:
print('对不起输入成绩有错误')
a+=1
while 循环要注意条件判断语句变量要加1。
in代表从字符串、列表依次取值遍历的过程。
当不需要变量遍历用"_"表示。
举个例子
for it in 'python' :
print(it,end='\t')
输出结果为
p y t h o n
不需要变量
for _ in range(5) :
print('1',end='\t')
结果为
1 1 1 1 1
继续举例 判断水仙花数 数值从100到999
for it in range(100,1000) :
ge=it % 10
ba=it //100
shi=it//10%10
if ge**3+ba**3+shi**3==it:
print(it)
结果为
153
370
371
407
break 为 结束循环 continue 为结束当前循环。
与C++不同的是,break 在嵌套循环中只结束内层循环。
for-else 的作用为结束循环时输出一个语句。
其基本思想与c++类似
举个栗子 打印9*9乘法表
cheng=0
for i in range(1,10):
for j in range(1,10):
cheng=i*j
if j<=i :
print(str(i)+'*'+str(j)+'='+str(cheng),end=' ')
print()
结果为
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81