Python学习
选择结构
通过使用选择结构通过判断条件是否成立,来决定执行那个分支。选择结构有多种形式,分为:单分支,双分支,多分支
单分支选择结构,if语句单分支结构语法表达形式:if条件表达式,语句/语句块
条件表达式详解,在选择和循环结构中,条件表达式的值为False的情况如下:False,0,0.0,空值None,空序列对象(空列表,空元组,空集合,空字典,空字符串)
条件表达式中,不能有赋值操作符“=”,在python中,条件表达式不能出现赋值操作符=,避免了其他语言中经常误将关系运算符==写作赋值运算符=,带来的困扰
下面是Demo
a = input('请输入一个小于10的数字')
if int(a)<10:
print(a)
b = []
if not b:
print('空的列表')
else:
print('Good')
c = 'False' #非空字符串:True
if c:
print(c)
d = 10
if d :
print(d)
if 3<d<100:
print('3<d<100')
# if 3<d and (c=20): 条件判断不能使用赋值操作符=
双分支结构
双分支结构语法格式:
if 条件表达式: 语句1/语句块1 else: 语句2/语句块2
三元条件运算符:三元运算符,用来在某些简单双分支赋值情况。三元条件运算符语法格式如下:条件为真时的值 if (条件表达式) else 条件为假时
下面是Demo
s = input('请输入一个数字')
if int(s)<10:
print('s是小于10的数字')
else:
print('s是大于等于10的数字')
num = input('请输入一个数字')
print('s是小于10的数字' if int(s)<10 else 's是大于等于10的数字')
多分支结构
多分支结构语法格式如下:if条件表达式1:elif条件表达式2:elif条件表达式N:else:语句n+1/语句块n+1
多分支结构,几个分支之间是有逻辑关系的,不能随意颠倒顺序
下面是Demo
#测试多分支结构
score = int(input('请输入分数'))
grade = ''
if score<60:
grade='不及格'
elif score<80: #60-80之间
grade='及格'
elif score<90:
grade='优秀'
else:
grade='优秀'
print('分数是{0},等级是{1}'.format(score,grade))
print('-------------------------------')
score1 = int(input('请输入分数'))
grade1 = ''
if (score1<60):
grade1 = '不及格'
elif(60<=score1<80):
grade1 = '及格'
elif(80<=score1<90):
grade1 = '良好'
elif(90<=score1<100):
grade1 = '优秀'
print('分数是{0},等级是{1}'.format(score1,grade1))
print('-------------------------------')
x = int(input('请输入x坐标'))
y = int(input('请输入y坐标'))
if(x==0 and y ==0):print('原点')
elif(x==0):print('y轴')
elif(y==0):print('x轴')
elif(x>0 and y>0):print('第一象限')
elif(x<0 and y>0):print('第二象限')
elif(x<0 and y<0):print('第三象限')
else:
print('第四象限')
选择结构嵌套
选择结构可以嵌套,使用时一定要注意控制好不同级别代码块的缩进量,因为缩进量决定了代码的从属关系
下面是Demo
score = int(input('请输入一个数字'))
garde = ''
if score>100 or score<0:
score = int(input('输入错误,请重新输入一个数字'))
else:
if score>=90:
garde = 'a'
elif score>=80:
garde = 'b'
elif score>=70:
garde ='c'
elif score>=60:
garde = 'd'
else:
garde = 'E'
print('分数为{0},等级为{1}'.format(score,garde))
print('--------------------------------------------')
score1 = int(input('请输入一个数字'))
degree = 'abcde'
num = 0
if score1>100 or score1<0:
print('请输入一个0-100的分数')
else:
num =score1//10
if num<6:num =5
print('分数为{0},等级为{1}'.format(score1,degree[9-num]))
循环结构
用来重复执行一条或多条语句。
while循环
下面是Demo
ni = 0
while ni<=30:
print(ni)
ni +=1
print('-----------------------')
#计算1-100之间数字的累加和
num = 0
sum_all = 0
while num<=100:
sum_all = sum_all+num
num +=1
print('1-100所有数的累加和:',sum_all)