栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python运算符与表达式_python包含运算符的表达形式?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python运算符与表达式_python包含运算符的表达形式?

文章目录

运算符

1.算术运算符 ( + - * / % // / )2.赋值运算符3.比较运算符4.逻辑运算符 (and or not)

短路运算4.1 and

运算顺序 4.2 or

运算顺序 4.3 not练习 5.成员关系运算符(in not in)6.对象实例测试(is not is)7.位运算8.一元运算(+a -a ~a)9.运算符优先级

运算符

1.算术运算符 ( + - * / % // / )

python2 vs python3

1.python2中有整型和长整型 ,python3中只有整型

2.python2中没有f标志位格式化

–》 3.python2中整数相除属于地板除,要想 真除 得变成 浮点数 ,python3中除属于真除

// => 取整除:a/b得到的结果进行取整

% => 模 - -》取余数:a/b得到余数

# 算术运算符 (+、-、*、/、//、 %)
a = 10
b = 20
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)
a+b= 30
a-b= -10
a*b= 200
a/b= 0.5
a//b= 0
a%b= 10
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)==>错误的
# 参数中不能有赋值运算的
a += 1 2
a -= 1 1
3.比较运算符

# 比较运算符   =>  结果: bool值
a = 100
b = 200
print("a>b:", a>b)
print("a 
a>b: False
a 
4.逻辑运算符 (and or not) 

逻辑运算符 => 取结果: bool

=> 实际返回:根据运算顺序返回表达式的结果

短路运算

对于包含了 and or not的表达式, 从左往右计算,但是会有短路运算规则

若 or左侧表达式为True,则短路后面所有的表达式(不管是and还是or)

若and左侧表达式为False,则短路后面

4.1 and

a and b: 如果a的bool为True,且b的bool为True => True

运算顺序

    计算a表达式的结果,如果a表达式结果bool为False直接返回a表达式的结果

    计算a表达式的结果,如果a表达式结果bool为True计算表达式b的结果并返回b表达式的结果

    a and b and c and d

    从左往右计算,计算表达式的布尔值为True继续向后计算,

    表达式的布尔值为False直接返回表达式的结果

#让c等于a,b中较大的数
c = a >b and a or b

print("10 and 0:", 10 and 0) # 0 ==》false
print(0 and 10)              # 0 ==》false
print(10+10 and 10)          # 10 ==》True
print(10+10 and None)        # None ==》False
4.2 or

a or b : 如果a或b任意一个表达式bool值为True,表达式bool值结果为True

运算顺序

    计算a表达式的结果,如果a表达式结果bool为True,直接a表达式的结果

    计算a表达式的结果,如果a表达式结果bool为False,计算表达式b的结果并返回b表达式的结果

    a or b or c or d

    从左往右计算,计算表达式的布尔值为False继续向后计算,

    表达式的布尔值为True直接返回表达式的结果

print(20 or 10)     #20 ==》true
print(None or 10)   #10 ==》 true
4.3 not

not a =>只有两个结果=>True 或 False

# 非运算
print(not 10)    # False
print(not None)  # True
练习

1.请写出条件"20

# 20 

2.设有一个int型的y,请写出描述"y为奇数的表达式"

# y%2 == 1
# y%2 != 0

3.从健盘接收商品单价及数量,计算出价格

price = int(input("请输入商品的单价:"))
num = int(input("请输入商品的数量:"))
print(f"价格为:{price*num}")
5.成员关系运算符(in not in)
# 成员关系运算符 in , not in # => True / False
# 是否包含(字符串、[列表、元组、字典] => 容器类型)
mystr = "2022/03/26"
print('2022' in mystr)     # true
print('2022' not in mystr) # false
6.对象实例测试(is not is)
# 对象实例测试
# 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) ~a=-a-1

# 左移运算<< 右移运算 >>
# 将数据变成2进制
# 0b10 << 2  => 0b1000
# 0b1010 >> 2 => 0b10
8.一元运算(+a -a ~a) 9.运算符优先级

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

# 左移运算<< 右移运算 >>
# 将数据变成2进制
# 0b10 << 2  => 0b1000
# 0b1010 >> 2 => 0b10
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/783561.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号