7.运算符
- 数学运算符:+ - * / // % **
a) + - * / 同数学中一摸一样(+ - × ÷)
print(5 + 2)
print(5 - 2)
print(5 * 2)
print(5 / 2)
b) %(取余、取模) - 求余数
print(10 % 3)
# 应用场景1:判断整除关系(判断一个数是否能够被另外一个数整除)-判断这两个数的余数是否为0
#理论基础:数学结论,如果一个数能够被另外一个数整除,那么它们的余数一定为零
print(20 % 2)
# 应用场景2:获取整数的低位数 - 让指定的数对10或者10的N次进行取余操作
num = 234
print(num % 10) # 4
print(num % 100) # 34
c) //(整除) - 求商,然后商向小取整
print(5 // 2) # 2
print(-5 // 2) # -3
num = 8791
print(num // 10) # 879
d) **(幂运算)
# x ** y - 求x的y次方
print(5 ** 3)
print(4 ** 2)
print(2 ** -2) # 0.25
print(16 ** 0.5) # 4
print(8 ** (1/3)) # 2
- 比较运算符: > < >= <= == !=
- 所有的比较运算符的运算结果都是bool
- python中的比较运算符支持连写表示范围
x = 2
print(1 <= x <=10)
- 逻辑运算符:and、or、not
a) and (逻辑与运算)
# 1.运用场景:连接要求同时成立的两个条件
# 2.运算规则:两个条件都成立为True;只要一个条件不成立为False
# 判断num同时被三整除
print(num % 3 == 0 and num % 7 == 0)
# 判断num是否是能够被7整除的偶数
number = int(input("输入一个数:"))
print(number % 7 == 0 and number % 2 == 0)
b) or(逻辑或运算)
# 1.应用场景:要求两个条件有一个成立
# 2.运算规则:只要有一个条件成立就是True,否则结果是False
# 判断是否是闰年:
num = int(input("输入一个数:"))
print((num % 4 == 0 and num % 100 != 0) or num % 400 ==0)
c) not(逻辑非)
# 1.应用场景:对条件进行否定的时候使用
# 2.运算规则:对条件进行否定
# 判断num是否不能同时被3和7整除
print(not (num % 3 == 0 and num % 7 == 0))
- 赋值运算符: = += -= *= /= %= //= =
# 1. = (前面的值可以是未定义的变量,也可以是定义过的变量)
a = 10
b = 20
a = 100 # 覆盖前面 a = 10 的值
# 2. += (已经赋值过变量同数据进行加法运算,覆盖以前的值)
b += 10
b -= 5
print(b) # 25
8.运算符优先级
- python 中不同的运算符的优先级不同,优先级高的运算符先算。
- 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
- 数学运算符: ** 大于 * / % // 大于 + -
- 逻辑运算符: and > or
- 有括号先算括号里面的
9.流程控制
-
流程控制指的是通过代码控制程序执行过程
-
根据代码执行过程不同,可以将代码分为三种结构
- 顺序结构 — 代码从上往下一条一条执行,每条代码执行一次
- 分支结构(if) — 根据条件选择执行或者不执行对应的代码
- 循环结构(for、while) — 代码写一遍,然后重复执行多次
-
-
if 分支结构
a) 单分支结构
# 1)语法:
if 条件语句:
代码块
# 2)示例
score = int(input("输入你的分数:"))
if score > 60:
print("及格")
b) 双分支结构
# 1)语法:
if 条件语句:
代码块
else:
代码块
# 2)示例
score = int(input("输入你的分数:"))
if score > 60:
print("及格")
else:
print("不及格")
c) 多分支结构
# 1)语法:
if 条件1:
代码块1
elif 条件2
代码块2
...
else: #可有可无
代码块n
# 2)示例
score = int(input("输入你的分数:"))
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
elif score >= 60:
print("D")
else:
print("不及格")
# 执行过程:先判断条件1是否成立,如果成立直接执行代码块1然后整个分之结构结束;条件1不成立判断条件2,条件2成立,执行代码块2,以此类推,最后执行else后面的代码块n。
- 循环结构的作用:让代码重复执行
a) for 循环
# 语法
for 变量 in 序列:
循环体
# 常见序列:字符串、列表、元组、字典、集合、迭代器、生成器、range
for i in 'abc':
print(i)
# 让变量去序列中取值,一个一个的取,取完为止,每取一个值执行一次循环体