day3-变量和运算符

1. 变量

1.1 程序中使用数据的两种方式
  1. 直接使用数据
print(18)
print((89+92)/2)
  1. 先将数据保存到变量中,然后再通过使用变量来使用数据
age = 26
print(age)

score1 = 89
score2 = 92
print((score2+score1)/2)
1.2 定义变量/创建变量

变量的作用:保存数据

  1. 语法:变量名 = 数据
  2. 说明:变量名:程序员自己命名

​ 要求:是标识符,不是关键字

​ 规范:见名知义(看到变量名就大概知道保存的是什么数据)

​ 不使用系统函数名(比如:printinputtype、…)

​ 所有字母都小写,多个单词之间用下划线隔开(PEP8)

​ =:固定写法

​ 数据:需要保存到变量中的具体数据(可以是具体的某种类型的数据,也可以是运算表达式的结果)

1.3 使用变量

使用变量中保存的数据,数据能做的事情,保存数据的变量都可以做

注意:变量必须先定义再使用

num = 100
print(100)
print(100+200)
print(type(100))
print(float(100))
print(num)
print(num+200)
print(type(num))
print(float(num))

x = num
print(x)

str1 = '姓名:'
name = input(str1)
1.4 同时定义多个变量
  1. 变量名1 = 变量名2 = 变量名3 = … = 数据:同时定义多个变量赋相同的值
a1 = b1 = c1 = 100
print(a1, b1, c1)
  1. 变量名1, 变量名2, 变量名3, … = 数据1, 数据2, 数据3, …:同时定义多个变量赋不同的值(变量的数量必须和数据的数量保持一致)
x, y = 100, 200
print(x, y)

m = 300
n = 20
m, n = n, m
print(m, n)
1.5 变量重新赋值

定义完变量以后可以重新给变量赋值,重新赋值后再使用变量,使用的是新的值

重新赋值的时候可以赋不同类型的值

score = 90
print(score)

score = 55
print(score)

score = '优秀'
print(score)

2. 变量的底层逻辑

python定义变量的时候先申请内存,内存申请多大看数据需要多大,申请完内存后将数据保存到内存中,然后再将变量和对应的内存进行关联

重新给变量赋值的时候,会根据新的值重新申请新的内存,然后将新的数据保存到新的内存中,最后将变量和新的内存进行关联

3. 数学运算符

3.1 +、-、*、/

+、-、*、/和数学中的+、-、×、÷的功能一样

如果运算对象中有一个是浮点数,那么结果一定是浮点数(适用于所有数学运算符)

除法(/)运算的结果一定是浮点数

print(10 + 20)      # 30
print(10 - 20)      # -10
print(0.5 * 20)     # 20.0
print(10 / 20)      # 0.5
print(20 / 10)      # 2.0
3.2 %(取余、取模)
# x % y:求x÷y的余数
print(10 % 3)       # 1
print(20 % 4)       # 0

# 1) 应用场景1:判断一个数是否能够被另外一个数整除:判断这两个数的余数是否为0
print(30 % 6)
print(18 % 5)

# 2) 应用场景2:取整数的低位数:对10的N次方取余,就可以获取这个数的后N位数
num = 946598984562
print(num % 10)     # 2
print(num % 100)    # 62
print(num % 1000)   # 562
3.3 //(整除)
# x // y:求x÷y的商向小取整的结果
print(5 // 2)       # 2
print(3.8 // 2)     # 1.0
print(-5 // 2)      # -3

# 应用场景1:求1个数中有多少个完整的另一个数
num = 9854623
print(num // 7)

# 应用场景2:去掉整数的低位数,保留高位数
print(965 // 10)    # 96
print(896 // 100)   # 8
3.4 **(幂运算)
# x ** y:求x的y次方
print(3 ** 4)       # 81
print(2 ** 5)       # 32
print(8 ** (1/3))   # 2

4. 比较运算符

比较运算符:>(大于)<(小于)==(等于)!=(不等于)>=(大于等于)<=(小于等于)

  1. 所有比较运算符的结果都是布尔值
  2. python中的比较运算符支持连写表示范围
print(100 > 200)    # False
print(10 == 10)     # True

num = 89
print('num是否是偶数:', num % 2 == 0, sep='')

score = 88
print('是否是中等成绩:', 70 <= score <= 90, sep='')

5. 逻辑运算符

5.1 and
  1. 应用场景:用来连接要求同时成立的两个条件,相当于生活中的’并且’
  2. 运算规则:条件1 and 条件2:如果两个条件同时成立结果就是True,只要有一个条件不成立结果就是False
True  and True    -   True
True  and False   -   False
False and True    -   False
False and False   -   False

num = 895
print('num是否能同时被3和8整除:', num % 3 == 0 and num % 8 == 0, sep='')

num = 92
print('num是否能同时被3和8整除:', num % 2 == 0 and num % 7 == 0, sep='')
5.2 or
  1. 应用场景:用来连接要求有一个成立的两个条件,相当于生活中的’或者’
  2. 运算规则:条件1 or 条件2:如果两个条件有一个成立结果就是True,只要有一个条件不成立结果就是False
True  or True    -   True
True  or False   -   True
False or True    -   True
False or False   -   False

# 练习1:判断num是否能够被3或者7整除
num = 89
print('num是否能被3或者7整除:', num % 3 == 0 or num % 7 == 0, sep='')

# 练习2:判断指定的年份是否是闰年
year = 8944
print('是否是闰年:', year % 4 == 0 and year % 100 != 0 or year % 400 == 0)
5.3 not
  1. 应用场景:对条件进行否定
  2. 运算规则:not 条件:对指定条件进行否定
not True     -     False
not False    -     True

age = 20
print(not age > 18)
print(age <= 18)

# 判断num是否不能被5整除
num = 89
print(not num % 5 == 0)
print(num % 5 != 0)

6. 赋值运算

赋值运算:=+=-=*=/=%=//=**=

  1. 注意:所有赋值运算符最终的功能都是完成对变量的赋值操作(将数据保存到变量中)
  2. 所有的赋值运算都没有结果,无法提供数据[print(b = 20) # False]

变量名 = 数据:将数据直接保存到变量中

变量名 += 数据:先将变量中保存的数据取出来,和后面的数据进行加法运算,然后将运算的结果重新赋值给前面的变量

注意:复合的赋值运算符前面的变量必须是已经赋值过的变量

num = 10
num += 2        # num = num + 2
print(num)      # 12
num -= 3        # num = num - 3
print(num)      # 9
num *= 2        # num = num * 2
print(num)      # 18
num %= 3        # num = num % 3
print(num)      # 0

7. 运算符的优先级

  1. 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)

  2. ** > *///% > +-

  3. and > or

  4. 有括号先算括号里面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值