本文主要是介绍对象的布尔值 pass空语句 程序的组织结构 顺序结构 选择结构 循环结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、对象的布尔值
Python一切皆对象,所有对象都有一个布尔值(True或False),用内置函数bool()来获取
括号内对象的布尔值为False(False,数值0,None,空字符串,空列表,空元组,空字典,空集合)
#测试对象的布尔值
print(bool(False))#False
print(bool(0))#0
print(bool(0.0))#0
print(bool(None))#None
print(bool(''))#空字符串
print(bool(""))#空字符串
print(bool([]))#空列表
print(bool(list()))#空列表
print(bool(()))#空元组
print(bool(tuple()))#空元组
print(bool({}))#空字典
print(bool(dict()))#空字典
print(bool(set()))#空集合
#其它对象的布尔值均为True
age=int(input('请输入您的年龄:'))
if age: #18的布尔值为Trueprint(age)
else: #0的布尔值为Falseprint('年龄为:',age)
二、pass语句
pass语句什么都不做,只是一个占位符,用在语法上需要语句的地方
在先搭建语法结构,还没想好代码怎么写的时候使用
与(if语句的条件执行体,for-in语句的循环体,定义函数时的函数体)
answer=input('您是会员吗?y/n')
if answer=='y': #会员pass
else: #非会员pass
三、程序的组织结构
1.顺序结构
程序从上到下顺序地执行代码,中间没有任何判断和跳转,直到程序结束
在一行代码前面的数字后面单击出现断点符号,然后点运行符号后面的小虫子,点向下的箭头可以一步步执行代码
2.选择结构(if语句)
根据判断条件的布尔值选择性地执行部分代码
(1)单分支结构(如果……就……)
if 条件表达式:
条件执行体
money=1000 #余额
s=int(input('请输入取款金额')) #取款金额
#判断余额是否充足
if money>=s:money=money-sprint('取款成功,余额为:',money)
(2)双分支结构(如果……就……,不满足……就……)
if 条件表达式:
条件执行体1
else:
条件执行体2
#从键盘录入一个整数,编写程序让计算机判断是奇数还是偶数
num=int(input('请输入一个整数'))
#条件判断
if num%2==0:print(num,'是偶数')
else:print(num,'是奇数')
(3)多分支结构
if 条件表达式1:
条件执行体1
elif 条件表达式2:
条件执行体2
elif 条件表达式N:
条件执行体N
else:
条件执行体N+1
#多分支结构,多选一执行
#从键盘录入一个整数,成绩
'''
90-100 A
80-89 B
70-79 C
60-69 D
0-59 E
小于0或大于100 为非法数据(不是成绩的有效范围)
'''
score=int(input('请输入一个成绩:'))
#判断
if 90<=score<=100:print('A级')
elif 80<=score<=89:print('B级')
elif 70<=score <=79:print('C级')
elif score >=60 and score <=69:print('D级')
elif score >=0 and score <=59:print('E级')
else:print('对不起,成绩有误,不在成绩的有效范围')
(4)嵌套if
if 条件表达式1:
if 内层条件表达式:
内层条件执行体1
else:
内层条件执行体2
else:
条件执行体
'''
会员>=200 8折>=100 9折否则 不打折
非会员 >=200 9.5折否则 不打折
'''
answer=input('您是会员吗?y/n')
money=float(input('请输入您的购物金额:'))
if answer=='y': #会员if(money>=200):print('打8折,付款金额为:',money*0.8)elif (money >= 100):print('打9折,付款金额为:', money*0.9)else:print('不打折,付款金额为:', money)
else: #非会员if (money >= 200):print('打9.5折,付款金额为:', money * 0.95)else:print('不打折,付款金额为:', money)
(5)条件表达式
条件表达式是if……else的简写
x if 判断条件 else y
如果判断条件的布尔值为True,条件表达式的返回值为x,否则条件表达式的返回值为y
#从键盘录入两个整数,比较两个整数的大小
num_a=int(input('请输入第一个整数'))
num_b=int(input('请输入第二个整数'))
#比较大小
if num_a>=num_b:print(num_a,'大于等于',num_b)
else:print(num_a,'小于',num_b)#使用条件表达式进行比较
print(str(num_a)+'大于等于'+str(num_b) if num_a>=num_b else str(num_a)+'小于'+str(num_b)) #字符串的连接
3.循环结构(while语句,for-in语句)
(1)内置函数range()的使用
已经学过的内置函数print,input;range()函数用于生成一个整数序列
创建range对象的三种方式:
range(stop),创建一个[0,stop)之间的整数序列,步长为1
range(start,stop),创建一个[start,stop)之间的整数序列,步长为1
range(start,stop,step),创建一个[star,stop)之间的整数序列,步长为step
返回值是一个迭代器对象
range类型的优点:不管range对象表示的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅需存储start,stop,step,只有当用到range对象时,才会去计算序列中的相关元素
in与not in判断整数序列中是否存在(不存在)指定的整数
#第一种创建方式,只有一个参数(小括号中只给了一个数)
r=range(10)#默认从0开始,到10结束(不包含10),默认步长为1
print(r)#显示:range(0,10)
print(list(r))#显示:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]#第二种创建方式,给了两个参数(小括号中给了两个数)
r=range(1,10)#指定从1开始,到10结束(不包含10),默认步长为1
print(list(r))#显示:[1, 2, 3, 4, 5, 6, 7, 8, 9]#第三种创建方式,给了三个参数(小括号中给了三个数)
r=range(1,10,2)#指定从1开始,到10结束(不包含10),指定步长为2
print(list(r))#显示:[1, 3, 5, 7, 9]#判断指定的整数在序列中是否存在 in,not in
print(10 in r)#显示:False,10不在当前的r这个整数序列中
print(10 not in r)#显示:True,10不在当前的r这个整数序列中
print(9 in r)#显示:True,9在当前的r这个整数序列中
print(9 not in r)#显示:False,9在当前的r这个整数序列中
循环结构(反复做同一件事情)
(2)while循环 用于次数不固定的循环 初始条件不成立一次都不执行
while 条件表达式
条件执行体(循环体)
#if是判断一次,条件为True执行一次
#while是判断N+1次,条件为True执行N次
四步循环法(初始化变量,条件判断,条件执行体(循环体),改变变量)初始化的变量与条件判断的变量与改变的变量为同一个
a=1
#判断条件表达式
while a<10:#执行条件执行体print(a)a+=1
#显示:1 2 3 4 5 6 7 8 9#计算0到4之间的累加和(4步循环法)
sum=0#用于存储累加和
#初始化变量为0
a=0
#条件判断
while a<5:#条件执行体(循环体)sum+=a#改变变量a+=1
print('和为',sum)#显示:和为 10
#计算1到100之间的偶数和(4步循环法)
sum=0#用于存储偶数和
#初始化变量
a=1
#条件判断
while a<=100:#条件执行体(求和)#条件判断是否是偶数if not bool(a%2):#0的布尔值为False,not bool取反操作,或者写成if a%2==0:sum+=a#改变变量a+=1
print('和为',sum)#显示:和为 2550
(3)for-in循环
in表达从(字符串,序列等)中依次取值,又称为遍历,for-in遍历的对象必须是可迭代的对象
for 自定义的变量 in 可迭代对象:
循环体
(循环体内不需要访问自定义变量,可以将自定义变量替代为下划线)
for item in 'Python':print(item)#显示:P y t h o n#range()产生一个整数序列,也是一个可迭代对象
for i in range(10):print(i)#显示:0 1 2 3 4 5 6 7 8 9#如果在循环体中不需要使用到自定义变量,可将自定义变量写为"_"
for _ in range(5):print('人生苦短')#显示:人生苦短 人生苦短 人生苦短 人生苦短 人生苦短print('使用for循环,计算1到100之间的偶数和')
sum=0#用于存储偶数和
for item in range(1,101):if item%2==0:sum+=item
print('1到100之间的偶数和为:',sum)#显示:1到100之间的偶数和为: 2550#输出100到999之间的水仙花数 举例:153=3*3*3+5*5*5+1*1*1
for item in range(100,1000):ge=item%10shi=item//10%10bai=item//100%10if item==ge**3+shi**3+bai**3:print(item)#显示:153 370 371 407
(4)break、continue与else语句
break语句用于结束循环结构,通常与分支结构if一起使用
#从键盘录入密码,最多录入三次,如果正确就结束循环
for item in range(3):pwd=input('请输入密码')if pwd=='8888':print('密码正确')breakelse:print('密码不正确')a=0
while a<3:pwd = input('请输入密码')if pwd == '8888':print('密码正确')breakelse:print('密码不正确')a+=1
continue语句用于结束当前循环,进入下一次循环,通常与分支结构if一起使用
#输出1到50之间所有5的倍数,5,10,15,20,25……
#5的倍数共同点:和5的余数为0
for item in range(1,51):if item%5==0:print(item)for item in range(1,51):if item%5!=0:continueprint(item)
else语句配合使用的三种情况:
if……else…… 在if条件表达式不成立时执行else
while……else……没有碰到break时执行else
for……else……没有碰到break时执行else
for item in range(3):pwd=input('请输入密码')if pwd=='8888':print('密码正确')breakelse:print('密码不正确')
else:print('对不起,三次密码均输入错误')a=0
while a<3:pwd = input('请输入密码')if pwd == '8888':print('密码正确')breakelse:print('密码不正确')a+=1
else:print('对不起,三次密码均输入错误')
(5)嵌套循环
循环结构中又嵌套了另外完整的循环结构,其中内层循环作为外层循环的循环体执行
#输出一个三行四列的矩形
for i in range(1,4):#行表,执行三次,一次是一行for j in range(1,5):#列表,执行四次,一次是一列print('*',end='\t')#不换行输出print()#换行#输出一个直角三角形
for i in range(1,10):#9行for j in range(1,i+1):print('*',end='\t')#不换行输出print()#换行#输出九九乘法表
for i in range(1,10):#9行for j in range(1,i+1):print(i,'*',j,'=',i*j,end='\t')#不换行输出print()#换行
二重循环中的break和continue用于控制本层循环
for i in range(5):#表示外层循环要执行5次for j in range(1,11):#表示内层循环要执行10次if j%2==0:breakprint(j)#显示:1 1 1 1 1
for i in range(5):#表示外层循环要执行5次for j in range(1,11):#表示内层循环要执行10次if j%2==0:continueprint(j,end='\t')print()#显示:1 3 5 7 9 (5次)
这篇关于对象的布尔值 pass空语句 程序的组织结构 顺序结构 选择结构 循环结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!