-
一. 变量(接day02)
2. 使用变量:
- 使用变量就是使用变量中的数据(保存数据的变量即可做到和数据相同的事情)
- 只要变量名没有出现在 = 前面都是在使用变量
3.重新给变量赋值:
name = '小明'
print(name)
name = '小红'
print(name)
4. 同时定义多个变量
a = b = c = 100
print(a, b, c)
变量名1,变量名2, 变量名3, 变量名4 = 数据1,数据2,数据3,数据4
二. 数学运算符
+ - * / (➗) %(取余) //(整除) **(幂运算)
注意
- 所有除法运算的运算结果都是浮点数
- 数学运算符的运算结果的类型和运算对象有关
1. %(取余) ---- 求余数
- x % y. ----- 求x除以y的余数
print(10 % 3)
- 应用场景a : 判断一个数能否被另一个数整除(判断余数是否为0)
print(90 % 2)
- 应用场景b : 获取整数的低位数
num = 345678
print(num % 10)
print(num % 100)
-
输出结果分别为 8, 78
2. // (整除) - 求商,向小取整
print(-5 // 2) # -3 (求得结果为-2.5,向小取整,所以结果为-3)
- 应用场景a: 计算一个数中有多少个完整的另外一个数(123里有多少个完整的10)
print(123 // 10)
- 案例: 一个商品的价格是18元, 200元可以买多少个这个商品
print(200 // 18)
- 应用场景b : 去掉整数的低位数,保留高位数
num = 13456
print(num // 10) #1345
print(num // 100) #134
练习: 分别取出一个四位数的个位、十位、百位、千位
number = eval(input('enter a four-digit number'))
print(number)
print('个位上的数是', number % 10)
print('十位上的数是', number // 10 % 10)
print('百位上的数是', number // 100 % 10)
print('千位上的数是', number // 1000)
3. ** (幂运算). x ** y 求x的y次方
print(3 ** 2)
三. 比较运算符
- 比较运算符 > , < , >= , ==(判断是否相等) , !=(不等于)
- 所有的比较运算符的运算结果都是布尔值
- python中的比较运算符支持连写表示范围
举例: 0 <= x <= 1 (mysql 不支持)
四. 逻辑运算符 AND OR NOT
1. And
- 应用条件:用于连接同时成立的两个或者多个条件,相当于并且
- 运算规则:条件1 and 条件2 (一个不成立都不行)
案例1: 判断num=82,是否能够同时被3和7同时整除。
num = 82
print(num % 3 == 0 and num % 7 == 0)
如果能被三整除的话,余数为0,两个余数都是0的话,就能同时被整除
练习:判断num是否是一个能被5整除的偶数
num = int(input('能否是被5整除的偶数'))
print(num % 2 == 0 and num % 5 == 0)
2. or
- 应用场景a:如果要求两个或者多个条件中的一个条件成立即可,相当于 或者
- 运算规则: 条件1 or 条件2 其中的一个条件成立即可
习题1: 判断指定的年是否为闰年
#普通闰年 可以被4整除但是不能被100整除, 世纪闰年能被400整除的年
year = int(input('请输入一个年份 :'))
print((year % 400 == 0) or (year % 4 == 0 and year % 100 != 0))
习题2 :判断num是否是一个小于10的小数
num = eval(input('请输入一个数:'))
print(num < 10 and type(num) == float)
解释: 看输入的类型(type)是否为浮点数 就知道是否为小数了。
3. not (逻辑非)
- 运用场景 : 对指定的条件进行否定, 相当于生活中的 不
- 运用规则: not 条件 (对指定条件进行否定)
例子: 判断num是否不能3整除
num = eval(input('请输入一个数:'))
print( not num % 3 == 0 )
print(num % 3 != 0 )
五. 赋值运算符及优先级: =、+=、-=、*=、/=、%=、//=、**=
- 无论何种赋值运算符,其最终目的都是将数据保存至变量中
- 所有的赋值运算都没有结果,赋值运算表达式无法提供数据
+= :变量名 += 数据 ----- 将赋值符号前变量中的数据取出来再与后面的数据进行加法运算,最后将计算结果重新保存的到变量中。
举例:
c = 20
c += 10
c %= 4
print(c)
结果为2, 先20+10 = 30 , 30 对4 取余, 余数为2.
- 运算符的优先级:数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
** > (* , /, //, %) > (+,-)
and > or
有括号先算括号中的
六. if 分支结构
1. 顺序结构
- 代码从上往下按顺序一条一条执行,每一条语句只执行一次
2. 分支结构
- 根据条件选择执行或者不执行相关的代码 ( if )
3. 循环结构
- 代码可以重复执行 ( for 、 while )
1. 顺序结构
- 代码从上往下按顺序一条一条执行,每一条语句只执行一次
2. 分支结构
- 根据条件选择执行或者不执行相关的代码 ( if )
num = 91
if num % 2 == 0:
print('偶数' )
else:
print('奇数')
a. if 单分支结构
- 如果xxx 就 xxx
语法:
if 条件语句:
代码段
# if 是关键字
条件语句 可以是任何有结果的表达式,一般写判断语句
: 固定写法
代码段 结构上,和if保持一个缩进的一条或多条语句,至少一条
逻辑上,代码段就是满足条件才执行的代码
-
案例: 根据age的值打印成年
age = 20
if age >= 18:
print(f"{age} 已经成年")
-
案例:如果num能被5整除就打印‘5的倍数’
num = eval(input('请输入一个数字'))
if num % 5 == 0:
print(f"{num} 是5的倍数")
b.if 双分支结构
- 如果xxx就xxx, 否则就xxx。
c.if 多分支结构
- 如果xxx就xxx, 如果xxx,就xxx,如果xxx,就xxx ......
3. 循环结构
- 代码可以重复执行 ( for 、 while )