Python学习日记2
1、程序的顺序结构
#起床分几步
print('1.睁眼')
print('2.穿衣服')
print('3.整理被褥')
print('4.洗漱')
2、对象的布尔值
print('----------以下对象的布尔值为False-----------')
print(bool(False))
print(bool(0))
print(bool(0.0))
print(bool(None))
print(bool(''))
print(bool(""))
print(bool([]))#空列表
print(bool(list()))#空列表
print(bool(()))#空元组
print(bool(tuple()))#空元组
print(bool({}))#空字典
print(bool(dict()))#空字典
print(bool(set()))#空集合
print('----------其他对象的布尔值均为True-------------')
3、分支结构
#分支结构
money = 2000
sum=int(input('请输入取款金额:'))
if money>=sum:
money=money-sum
print('取款成功,余额为:',money)
else:
print('取款失败,余额不足')
#多分支结构
#判断
if score>= 90 and score<=100:
print('A')
elif score>=80 and score<90:
print('B')
elif score>=70 and score<80:
print('C')
elif score>=60 and score<70:
print('D')
elif score>=0 and score<60:
print('E')
else:
print('输入无效成绩!')
在python中还可以这样表达大小关系
if 90<=score<=100:
print('A')
elif 80<=score<90:
print('B')
elif 70<=score<80:
print('C')
elif 60<=score<70:
print('D')
elif 0<=score<60:
print('E')
else:
print('输入无效成绩!')
注:多层if嵌套,一定要做好缩进,python是根据缩进运行代码的
que=input('您是会员吗?y/n')
money=400
print('您的购物金额为:',money)
if que=='y':#会员
print('会员')
if money>=100:
print('打九折,付款金额为:',money*0.9)
elif money>=200:
print('打八折,付款金额为:',money*0.8)
else:
print('不打折,付款金额为:',money)
else:#非会员
print('非会员')
4、条件表达式
语法结构:
x if 判断条件 else y
#条件判断的结果为True,就执行条件左侧的内容,如果为False,就执行右侧的内容
感觉类似C中的三目表达式(表达式a?表达式b:表达式c)
_num1 = float(input('输入第一个数'))
_num2 = float(input('输入第二个数'))
print('使用条件表达式进行比较')
print(str(_num1)+'大于等于'+str(_num2) if _num1>=_num2 else str(_num1)+'小于'+str(_num2))
5、pass语句
(1) pass语句什么都不做,只是一个占位符,用在语法上需要语句的地方
(2) 什么时候使用:先搭建语法结构,还没想好代码怎么写的时候
(3) 哪些语句一起使用:
if语句的条件执行体
for-in语句的循环体1
定义函数时的函数体
sum=int(input('请输入一个整数'))
if sum>=50:
pass
else:
pass
6、循环结构
(1) while 条件表达式:
条件执行体(循环体)
四步循环法:
初始化变量
条件判断
条件执行体(循环体)
改变变量
n=0
sum=0
while n<5:
sum+=n
n=n+1
print('和为',sum)
#练习题:计算1-100之间的偶数和
sum=0#用于存储结果
_fig=1
while _fig<=100:
if _fig%2==0: #或者可以这样写if not bool(_fig%2):
sum+=_fig
_fig=_fig+1
print('1-100偶数和为',sum)
(2) for in循环
in表达从(字符串、序列等)中依次取值,又称为遍历
for-in遍历的对象必须是可迭代对象
语法结构:
for 自定义的变量 in 可迭代对象:
循环体
for _item in 'python':
print(_item)#p y t h o n
for _item2 in range(4):
print(_item2)#0 1 2 3
循环体内不需要访问自定义变量,可以将自定义变量代替为下划线,可以实现循环输出
for _ in range(3):
print('ysjx')#ysjx ysjx ysjx
实例:使用for-in解决偶数和问题
sum=0
for _item in range(1,101):
if not bool(_item%2):
sum+=_item
print('1-100之间的偶数和为:',sum)
#求100-999的水仙花数
for _item in range(100,1000):
a=int(_item%10)
b=int(_item/10%10)#_item//10%10
c=int(_item/100)#_item//100
if _item==a*a*a+b*b*b+c*c*c:#a**3+b**3+c**3
print(_item)
7、流程控制语句
(1) break
用于结束循环结构,通常与分支结构if一起使用
#从键盘输入密码,最多录入3次,如果正确跳出循环
for _item in range(3):
pwd = input('请输入密码:')
if pwd=='1234':
print('密码正确')
break
else:
print('密码错误')
(2) continue
用于结束当前循环,进入下一次循环,通常与分支结构if一起使用
#输出1-100之间3的倍数
for _item in range(1,101):
if bool(_item%3):
continue
print(_item)
(3) 嵌套循环
#输出一个四行五列的矩阵
for i in range(1,5):#行表
for j in range(1,6):#列表
print('(',i,',',j,')',end='\t')#不换行输出
print()
实例:
#打印九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,end='\t')
print()