运算符部分
3.逻辑运算符
1)and or not
2)and
and ,连接同时成立的两个规则,相当于生活中的并且
条件1 and 条件2 两个条件都成立,结果为true,有一个或以上条件不成立,结果为false
#练习:判断num是3和7的公约数
#判断能被3整除
num = 345
#num % 3 = 0
print ( ’num是否是3和7的公约数‘,num % 3 == 0 and num % 7 == 0 )
# 练习1:判断num是否是能够被7整除的偶数
num = 34
print ( 'num是否是能够被7整除的偶数', num % 7 == 0 and num % 2 == 0 )
# 练习2:判断num是否是个位数能够被3整除的数
num = 109
print ( 'num是否是个位数能够被3整除的数', num % 10 % 3 ==0 )
3)or
应用场景:要求两个条件中有一个成立即可,就用or对这两个条件进行连接
运算规则:条件1 or 条件2
只要其中一个条件true,结果就是true,否则结果为false
#练习1 判断num是否能被3或者7整除
num = 23
print( '判断此数能否被3或者7整除:’ , num % 3 == 0 or num % 7 ==0 )
#练习2 判断某一年是否是闰年
#闰年:能被400整除的年,能被4但是不能被100整除的年
year = 2000
print( '判断此年是否为闰年:’ , year % 400 == 0 or (year % 4 ==0 and num % 100 != 0))
4)not
not条件,对条件进行否定
not true - flase
not false - ture
#练习:判断age对应的年龄是否不大于18
age = 29
print(not age > 18)
#判断num不是偶数
print(not num %2 ==0)
#判断num是否不能同时被3和7整除
#3和7整除+not
#能被3不能被7+能被7不能3,不能37
#能同时被3和7整除的数,一定能被它们的最小公倍数整除
4.赋值运算符
1)=
变量 = 数据
直接将值存到变量中
可以是定义过的变量,也可以是没有定义过的
如果给定义过的再定义,值会覆盖
2)复合运算符(数学运算符加上=)
功能:赋值运算符最后都是为了将一个数据保存到变量当中
## +=
变量+=数据
将变量保存的数据取出来,和后面的数据进行加法运算,再将计算结果重新复制到前面的变量当中
注意:变量必须已经被赋值(定义)过
b=20
b+=10
print(b) #b=30
b-=5
print(b) #b=25
b%=3
print(b) #b=1
运算符的优先级
1)运算符优先级高的先
2)数学运算符>比较运算符>逻辑运算符>赋值运算符(最低)
3)数学运算符中:** > * / % > + -
4)逻辑运算符中,and > or
5)有括号的先算括号内的
流程控制
*# 流程控制——通过代码控制程序执行的过程
# 顺序结构
1)从上往下执行,每条代码执行一次
2)代码默认都是顺序结构的
# 分支结构(if)
1)可以根据条件选择执行某些代码或者不执行某些代码
# 循环结构(for while)
1)代码写一遍,重复执行多次
if分支结构
1)if单分支结构
如果XXX,就XXX
作用:条件成立,执行某操作;不成立就不执行这个操作。
# 语法
if条件语句:
代码块
# 说明
if ———— 关键字,是固定写法
条件语句 ———— 可以使任何有结果的表达式,一般是判断语句
:(冒号) ———— 是固定写法,应当是半角符号
代码块 ———— 结构上和if保持一个缩进的一条或者多条语句(一个缩进是四个空格或者一个tab)
代码块 ———— 逻辑上,需要满足条件的时候才会执行的代码
#如果num是偶数,就在控制台打印偶数
num=28
if( num%2==0):
print('偶数')
#根据score的值,在控制台打印不及格
score=59
if score<60 :
print('F')
print('笨蛋,请于明日下午参加补考')
2)if双分支结构
如果xxx,就XXX,否则就XXX
如果上岸就读研,否则就工作
'''
if条件语句:
缩进+代码块1
else:
缩进+代码块2
else不需要加代码块
代码块3(顶格写都会成立)
'''
#数字是偶数打印偶数,不是则打印奇数
num=10086
if num%2==0:
print('偶数')
else:
print('奇数')
#根据score,打印及格或者不及格
score=60
if score>=60:
print('及格')
else:
print('不及格')
3)if多分支结构
如果XX,就XX;如果XX,就XX;如果XX,就XX。
根据不同的条件做不同的事情
if+条件1:
缩进代码块1
elif+条件2:
缩进代码块2
...
else:条件n
缩进代码块N
第一个条件成立,就执行第一个代码然后结束
后面顺序,看哪个最先成立就执行后结束
前面所有条件都不成立,就执行else代码
else代码不一定要有
#根据score打印学生的登记
#>=90 A 80-90 b 70-80 c 60-70 d 60以下F
score=75
if 100 >= score >= 90:
print('A')
elif 90 > score >= 80:
print("B")
elif 80 > score >= 70:
print("C")
elif 70 > score >= 60:
print("D")
elif 60 > score >= 0:
print("E")
else:
print("你录入的程序不在合理区间内")
For循环
1)For和while都是为了让代码重复执行,Python中只有For
2)语法
for 变量名 in 序列:
缩进+循环体
3)语法说明
for ——关键字,固定写法
变量名 ——可以是任何变量的变量名
in ——固定写法
序列 ——任何容器型数据类型的数据 (也就是说可以同时保存多个值)
循环体 ——和for保持一个缩进的一条或者多条语句(至少一条)(逻辑上就是需要循环执行的代码)
4)序列
容器型数据类型的数据:能存储多个数据的
非容器型数据类型的数据:只能存一个
常见的容器型数据类型的数据:字符串、列表、字典、元祖、集合、迭代器、生成器、range等
5)元素:一个容器可以保存多个数据,其中每一个独立的数据,就是这个序列的元素
6)执行原理(过程):让变量去序列中一个个取值,取一个值就执行一次循环体
# 示例
for information in "hhhhhh":
print(information)
print(' 哈哈哈哈哈哈 ')
print(' 嘿嘿嘿嘿嘿嘿 ')