文章目录
1 运算符
1.1 算术运算符
a=10 b=20
# 算术运算符:+ - * / // % **
a=10
b=20
print(a+b)
print(a-b)
print(a*b)
print(a/b)
print(a//b)
print(a%b)
1.2 赋值运算符
# 赋值运算符 :+= -= *= /= //= %= **=
m=0
m+=1 # m=m+1=0+1 m=1
m+=2 # m=m+2=1+2 m=3
print(m)
1.3逻辑运算符
'''
逻辑运算符:and or not
and : 表示and左右两边同时为true,那么结果为true
or:表示or左右两边任意一边为true,那么结果为true
not:表示not右边的表达式取反
通常和比较运算符联合使用在判断语句中
'''
a=True
b=False
print(a and b)
print(a or b)
print(not a)
1.4 比较运算符
a=10 b=20
# 比较运算符:== != > < >= <=
print(a==b) # false
print(a!=b) # true
print(a>b) # false
print(a<b) # true
print(a>=b) # false
print(a<=b) # true
1.5 运算符优先级
所有运算符优先级从高到低
优先级的使用,直接用()括起来,()里面的先运算
# in not in
str1='张晓明'
str2='张明'
print(str2 not in str1)
1.6 数据类型转换
常用的数据类型转换
1.7 成员运算符
测试实例中包含了一系列的成员,包括字符串,列表或元组
1.8身份运算符
用于比较两个对象的存储单元。注: id()函数用于获取对象内存地址
2 判断语句
2.1 if…else…
if…else…使用格式
'''
判断语句
语法:
if 条件:
满足条件时,执行的代码1
满足条件时,执行的代码2
通常和逻辑运算符 and or 连用
if-else
语法:
if 条件:
满足条件,执行的代码
else:
不满足if后面的条件,执行的代码
'''
练习:
从键盘输入一个age年龄,判断是否成年,如果已经成年,则可以处对象,否则,不能
age=input('请在键盘输入一个年龄:')
age=int(age)
if age>=18:
print('已经成年,可以处对象')
else:
print('请好好学习,天天向上')
print('end')
练习:
和女朋友异地谈恋爱,情人节去到女朋友所在的城市过节。如果买到高铁票,那么就可以见到心心念念的她了;如果没有买到高铁票,那么亲爱的,下次再见啦~
用ticket表示是否有车票 用1代表有车票 用0代表没有车票
ticket=1
if ticket==1:
print('出发去过520')
else:
print('明年再过520')
练习
从键盘输入刀子的长度,如果刀子长度没有超过10cm,则允许上火车,否则不允许上火车
'''
模拟上火车的场景:不能带刀过安检
判断:刀子长度是否超过了规定的规格
'''
knife=int(input('请输入刀子的长度:'))
if knife>=10:
print('对不起,你需要把刀子丢掉,才能上火车')
else:
print('车要开走了,请尽快上车')
2.2 if…elif…
语法:
if 条件1:
执行代码1
elif 条件2:
执行代码2
elif 条件3:
执行代码3
注意:
elif只能和if连用,也就是不能直接使用elif,
else可以在if-elif中使用(不是必须存在的)
练习:
成绩等级评级(A、B、C、D)
score=78
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')
else:
print('不及格')
练习:
性别判定(男、女、第三种性别)
sex='男'
if sex=='男':
print('他是男性')
elif sex=='女':
print('她是女性')
else:
print('他可能是第三种性别')
2.3 if嵌套
if嵌套:
if里面可以接以上if所有结构
语法:
if 条件1:
if 条件2:
满足条件1的时候,执行的代码
else:
不满足条件1的时候,执行的代码
else:
不满足条件1,执行的代码
if-elif-else 嵌套
if 条件1:
if 条件01:
执行代码01
elif 条件02:
执行代码02
else:
不满足条件01...n,执行的代码
elif 条件2
执行的代码2
else:
不满足以上的条件1..n,执行的代码
练习:
车票进站问题
# ticket代表有无车票
# knife代表刀子长度
ticket=1
knife=8
if ticket==1:
if knife<=10:
print('已经顺序安检完,尽快上车')
else:
print('请把刀子留下')
else:
print('请购买车票')
练习:
请输入公交卡余额,如果余额大于等于1,可以上公交车,上车之后,
如果空位大于0,那么可以坐下
money=int(input('请输入公交卡余额:'))
seat=1
if money>=1:
if seat>0:
print('先生,可以坐下')
else:
print('先生,站着吧')
else:
print('请充值')
练习:
猜拳游戏
运行效果:
请输入:剪刀(0) 石头(1) 布(2)
你输了!再来一局
测试:
赢了
平局
输了
import random
computer=random.randint(0,2)
player=int(input('请输入:剪刀(0) 石头(1) 布(2):'))
# 测试一下
# print('player:%d,computer:%d'%(player,computer))
if ((player==0 and computer==1) or (player==1 and computer==2)
or (player==2 and computer==0)):
print('恭喜你,赢了')
elif player==computer:
print('平局')
else:
print('你输了')
3 循环语句
3.1 while循环
- 一般情况下,需要多次重复执行的代码,都可以用循环完成
- 循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环
循环语句
循环:一般情况下,我们需要重复执行的代码,可以放入循环语句中
死循环:当条件一直满足的情况下,一直执行代码(需要避免的)
while循环
语法:
while 条件:
满足条件,需要执行的代码
i=0
while i<5: # 0 1 2 3 4
print('宝贝,我错了')
i+=1
这是第1次执行循环
i=0
这是第5次执行循环
i=4
i=0
while i<5:
print('这是第%d次执行循环'%(i+1))
print('i='+str(i))
i+=1
练习:
求1-100的累积和(包含1,100)
i=1
count=0
while i<=100:
count+=i
i+=1
print(count)
练习:
求1-100的偶数和奇数的累积和(包含1,100)
# # 循环次数
i=1
# 偶数和用even_sum表示
even_sum=0
# 奇数和用odd_sum表示
odd_sum=0
while i<=100: # 1 2 3
if i%2==0:
even_sum+=i # 0+2
else:
odd_sum+=i
i+=1 # 2 3 4
print(even_sum)
print(odd_sum)
3.2 while循环嵌套
语法:
while 条件1:
while 条件2:
满足条件1的前提下,满足条件2,执行的代码
满足条件1,执行的代码
练习:
想办法输出下图:
*
**
***
****
*****
i=0
while i<5: # 1 2 3 4
j=0
while j<=i: # 0 1 2 3 4
print('*',end=' ')
j+=1
print()
i+=1
结果:
练习:
打印九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
i=1
while i<=9:
j=1
while j<=i:
print('%d*%d=%d'%(j,i,i*j),end='\t')
j+=1
print()
i+=1
结果:
3.3 for循环
语法:
for 临时变量 in 字符串等:
满足这个in条件,执行的代码
for b in 'abcds':
print(b)
结果:
3.4 break和continue
共同点:用来结束循环
在他们之后的语句不会执行
不同点:
break :用来结束所有循环
continue:用来结束本次循环,继续执行下一次循环
注意:
break和continue只能用在循环中
在循环嵌套中,只对最近一层循环起作用
pass:跳过本次循环,需要注意的是,需要让if判断有else子句
区别:
break和continue必须在循环中使用,pass不需要
break:
i=0
while i<5:
if i==3:
break
print('break跳出循环')
print(i)
i+=1
结果:
continue:
i=0
while i<5:
i+=1
if i==3:
continue
print('continue跳出本次循环')
print(i)
print('end')
结果:
pass:
i=0
while i<5:
if i==3:
pass
else:
print(i)
i+=1
print('end')
结果:
str1='abcdefg'
for temp in str1:
if temp=='c' or temp=='f' or temp=='g':
continue
else:
print(temp)
str2='abcdefg'
for a in str2:
if a in 'cde':
break
print(a)
i = 0
while i<3:
j=0
while j<3:
if j==1:
break
print(i,j)
j+=1
i+=1