Python运算符与表达式

Python运算符与表达式

一、Python表达式

  • 什么是表达式

    • 表达式由一个或多个操作数通过操作符组合而成。

    • 最简单的表达式仅包含一个字面值常量或变量。

  • >>> 23+12
    35
    >>> 4*3
    12
    >>> 8-3
    5
    >>> 8/3
    2.6666666666666665
    >>> 3//8
    0
    >>> 3%8
    3
    

二、Pyrhon运算符

1、运算符的分类

  • 算术运算符 :x+y, x-y, x / y, x*y, x // y, x%y

  • 赋值运算符 :x+=1, x-=1

  • 比较运算符 :x>y, x<y, x>=y, x<=y, x==y, x!=y

  • 逻辑运算符 :x or y, x and y, not x

  • 成员关系运算 :x in y, x not in y

  • 对象实例测试 :x is y, x not is y

  • 位运算 :x & y, x | y, x ^ y, x<<y, x>>y, ~x

  • 一元运算 :-x,+x,~x(按位取反)

(1)、算术运算符
print("a+b=", a+b)
print("a-b=", a-b)
print("a*b=", a*b)
print("a/b=", a/b)
# // => 取整除:a/b得到的结果进行取整
print("a//b=", a//b)
# %  => 模 - 取余数:a/b得到余数
print("a%b=", a%b)
(2)、赋值运算符
# 赋值运算符
a = 1
a += 1   # a=a+1
print("a += 1", a)
a -= 1   # a=a-1
print("a -= 1", a)
# print("a -= 1", a+=1)
# 参数中不能有赋值运算的
(3)、比较运算符
# 比较运算符   =>  结果: bool值
a = 100
b = 200
print("a>b:", a>b)
print("a>b:", a>b)
(4)、逻辑运算符
# 逻辑运算符   => 取结果: bool
#            => 实际返回:根据运算顺序返回表达式的结果
# a and b: 如果a的bool为True,且b的bool为True => True
# 10 => True
# 0 => False
# 10 and 0 => False
print("10 and 0:", 10 and 0)


# 运算顺序:
# 1. 计算a表达式的结果,如果a表达式结果bool为False,直接a表达式的结果
print(0 and 10)
# 2. 计算a表达式的结果,如果a表达式结果bool为True,计算表达式b的结果并返回
print(10+10 and 10)    # True
print(10+10 and None)  # False

# a or b : 如果a或b任意一个表达式bool值为True,表达式bool值结果为True
# 1. 计算a表达式的结果,如果a表达式结果bool为True,直接a表达式的结果
print(20 or 10)
# 2. 计算a表达式的结果,如果a表达式结果bool为False,计算表达式b的结果并返回
print(None or 10)


# not a =>只有两个结果=>True 或 False
# 非运算
print(not 10)    # False
print(not None)  # True

# a and b and c and d
# 从左往右计算,计算表达式的布尔值为True继续向后计算,
# 表达式的布尔值为False直接返回表达式的结果

# a or b or c or d
# 从左往右计算,计算表达式的布尔值为False继续向后计算,
# 表达式的布尔值为True直接返回表达式的结果
(5)、成员关系运算符
# 成员关系运算符 in , not in # => True / False
# 是否包含(字符串、[列表、元组、字典] => 容器类型)
mystr = "2022/03/26"
print('2022' in mystr)
print('2022' not in mystr)
(6)、对象实例测试运算符
# 对象实例测试
# is,not is => 判断两个对象是不是同一个对象(同一块内存区域)
# 比较id,
# is =>       id(a) == id(b)
# not is =>   id(a) != id(b)
(7)、位运算符
# 位运算符 => 数字类型
# & => 按位与 => 同为1结果为1,否则为0
a = 2  # 0b10
b = 3  # 0b11
print(a & b)  # 0b10 =>2

# | => 按位或 => 任意一个为1结果为1,否则为0
a = 4  # 0b100
b = 5  # 0b101
print(a | b)  # 0b101 =>5

# ^ => 按位异或 => 两位相同结果为0,不相同结果为1
a = 4  # 0b100
b = 5  # 0b101
print(a ^ b)  # 0b1 =>1

# ~ 按位取反
a = 1
print(~a)

# 左移运算<< 右移运算 >>
# 将数据变成2进制
# 0b10 << 2  => 0b1000
# 0b1010 >> 2 => 0b10

3、运算符优先级

(1)Python运算符优先级

# python 支持1<x<10这种表示方法
# 指数运算
print(2**10)
# 正(+)和负(-)和~
print(-2**10)

# 当对于运算优先级不确认,可以使用()优先级提高
print((-4)**2)
print(-4**2)

print("5") # 5,值:None => False
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pod️

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值