python-变量和运算符

day2-变量和运算符
1同时定义多个变量
  • 1.同时定义多个变量赋相同的值:变量名1 = 变量名2 = 变量名3 = … = 数据

例如:

x = y = z = 0
  • 2.同时定义多个变量赋不同的值:

    变量名1, 变量名2, 变量名3,… = 数据1, 数据2, 数据3, …

例如:

name, age, gender = '小明', 30, '男'
  • 3.变量重新赋值

    重新给变量赋值以后,变量中保存的是最新的值,使用变量时使用的是变量中最新的值

  • 4.Python定义变量和重新给变量赋值的原理

    Python在定义变量的时候会先申请内存保存数据,内存申请的大小看被保存的数据多大,重新给变量赋值的时候,会申请新的内存,新的内存的大小由新的数据的大小决定,然后变量会和新的内存关联,原来的内存会自动销毁

    注:id(变量):获取变量对应的内存地址

例如:

num = 100
print(id(num))
num = 1000
print(id(num))
2数学运算符
  • 1.数学运算符:+,-,*,/,%,//,**

    1)数学运算符中的+,-,*,/ 和数学中的 +,- ,x,÷的功能一模一样

    ​ 注意:除法运算的运算结果是浮点型

例如:

print(10 + 20)
print(2 - 5)
print(3 * 5)
print(5 / 2)

​ 2)取余:%

​ x % y ------------ 求x除以y的余数

例如:

print(10 % 3)  # 1
print(15 % 3)  # 0
print(9 % 2)   # 1

​ 判断两个数是否存在整除关系 - 判断两个数的余数是否为0

例如:

print(10 % 2)
print(25 % 5)

​ 取余应用二:取整数低位数

​ 一个整数对10取余,能够获取该整数的个位数

​ 一个整数对100取余,能够获取该整数的后两位数

​ 一个整数对1000取余,能够获取该整数的后三位数

例如:

num = 12345
print(num % 10)  # 5
print(num % 100) # 45
print(num % 1000) #345

​ 3)整除://

​ 求商的部分,保留整数部分 整数(商向下取整)

例如:

print(5 // 2)  # 2
print(-5 // 2) # -3

​ 整数应用场景:去掉低位数

​ 一个整数对10整除,能够去掉该数的个位数

​ 一个整数对100整除,能够去掉该数的后两位数

​ 一个整数对1000整除,能够去掉该数的后三位数…

例如:

num = 2342
print(num // 10) # 234
print(num // 100) #23
print(num //1000) #2

​ 4)幂运算:**

​ x ** y ---- 求x得y次方

例如:

print(2 ** 3) # 8
print(3**2)  # 9
print(9 ** 0.5) # 3
print(8 ** (1/3)) # 2
3比较运算符
  • 1.比较运算符: >, <, ==, !=, >=, <=

    所有得比较运算符得运算结果都是布尔值

例如:

print(10 > 20) # False
print(10 < 20) # True
print(10 == 20) # False

​ Python中的比较运算符支持连写表示范围

例如:

x = 0.5
print(0 <= x <= 1)
4逻辑运算符

​ 逻辑运算符:and(逻辑与), or(逻辑或), not(逻辑非)

  • 1.and
"""1)应用场景:用于需要多个条件同时满足的情况
2)运算规则:条件1 and 条件2 ----------两个条件结果都为True结果才为True,只要有									一个条件结果为False结果就为False
		   	True and True ---> True
		   	True and False ---> False
		   	False and True ---> False
		   	False and False ---> False
"""
num = 21
print('能否被3和7同时整除:', num % 3 == 0 and num % 7 == 0)
print('能否被3和7同时整除:',num % 21 == 0)
  • 2.or
"""
1)应用场景:用于需要多个条件只要有一个满足条件就行的情况
2)运算规则:条件1 or 条件2 ---- 两个条件中只要有一个条件结果为True,结果就为                                 True,当两个条件结果都为False结果才为False
           True or True ---> True
		   True or False ---> True
		   False or True ---> True
		   False or False ---> False
"""
num = 20
print('是否能被5或者7整除:',num % 5 == 0 or num % 7 == 0)
num = 1997
print('闰年:',num % 4 == 0 and num % 100 != 0 or num % 400 == 0)
  • 3.not
"""
1)应用场景:(对某一个条件进行否定)如果正向写条件,条件很多很复杂,反向写很简单,条件就反向写再加not
2)运算规则: not 条件 ----- 对条件进行取反操作
           not False ---> True
           not True  ---> False
"""
# 练习:写出判断一个数不能被3和7整除的条件
# 条件正向写:
# 1)能被3整除不能被7整除:num % 3 == 0 and num % 7 != 0
# 2)能被7整除不能被3整除:num % 3 != 0 and num % 7 == 0
# 3)既不能被3整除也不能被7整除:num % 3 != 0 and num % 7 !=0
print((num % 3 == 0 and num % 7 != 0) or (num % 3 != 0 and num % 7 == 0) or (num % 3 != 0 and num % 7 !=0))
# 条件反向写
# 能同时被3和7整除:num % 21 == 0
# 不能同时被3和7整除:not num % 21 == 0
print(not num % 21 == 0)
5逻辑运算符的扩展
# 1.短路操作:某条语句不执行
"""
条件1 and 条件2
and的短路:如果条件1为False,则条件2对应的代码不执行

条件1 or 条件2
or的短路:如果条件1为True,则条件2对应的代码不执行
"""
# 2.逻辑运算符的通用运算规则
"""
1) and
数据1 and  数据2
2)or
数据1 or 数据2
3)not
"""
print(True and 100)  #100
print(False and 100) #False
print(False or 100)  #100
print(True or 100)   #True

print(7 and 8) # 8
print(7 or 8)  # 7

# (记住)重要结论:python中任何类型的数据都可以转换成布尔值(都有布尔值),其中零值和空值是False,其他都是True
6赋值运算符
  • 1.赋值运算符:=,+=,-=,*=,/=,%=,//=,**=
    • 1)赋值运算符的作用不是计算一个结果,而是将数据保存到变量中
    • 2)所以的赋值运算符的左边必须是变量
  • 2.=
    • 变量 = 数据
  • 3.+=,-=,*=,/=,%=,//=,**=
    • 变量 += 数据 ------- 将变量中保存的数据和 +=后面的数据进行加法操作,将运算结果重新赋值给变量(其他的 -=,*=,/=,%=,//=,**=和+=的操作一样)

例如:

sum = 12
sum += 10  #相当于sum = sum +10

注意:所有的赋值运算是没有结果的

8运算符的优先级
  • 1.运算符的优先级:数学优先级 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
  • 2.数学运算符中:** > * , /, %, // > +, -
  • 3.有括号先算括号里面的
  • 4.如果有布尔数据参与了数学运算,那么False当成0,True当成1

例如:

result = 100 + (10 > 20)
print(result) # 100
result = 100 + (10 < 20)
print(result) # 101
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值