【python入门第九天】python基础-运算符

运算符

运算符:以1+2为例,1和2被称为操作数,“+”称为运算符。
Python语言支持以下类型的运算符:

  1. 算术运算符
  2. 比较(关系)运算符
  3. 赋值运算符
  4. 逻辑运算符
  5. 位运算符
  6. 成员运算符
  7. 身份运算符
  8. 三目运算符

算术运算符

以下假设变量:a=10,b=20:
在这里插入图片描述
python中,有三种除法,分别是

10/3	   3.333333333						

1.计算结果是浮点数,即使两个整数恰好整数,结果也是浮点数

9/3	   3.0

2.只取整数部分,余数被抛弃

10//3	   3

3.余数运算,可以得到两个整数相除的余数

10%3	1

如果想同时得到商和余数,可以用这个方法

divmod(10,3)	(3,1)

因为浮点数精度的问题,Python还存在一些计算方面的小问题

0.1+0.1+0.1-0.3
5.551115123125783e-17

要解决这个问题,可以导入decimal模块

from  decimal  import  Decimal
Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.0')

比较运算符

在这里插入图片描述
1.下面三个选项哪个为True?
‘abc’ < ‘xyz’
#为什么字符串可以进行大小比较,这是因为电脑存储字符时,是以ASCII码值存储的
也就是A是65,z是90.你输入的字符也是一个对应的数字
(3,2) < (‘a’,‘b’)
2.请分别说出下面各项的值:
True == 1
False == 0
3>2>1
3>2>2
(3>2)>1
(3>2)>2
对于连续比较,Python是按这种机制解释的:
3>2>1 等于 (3>2)and(2>1),相当于两个比较,然后用与&再结合起来。

赋值运算符


注意对于 a/=b 之类的操作,等同于a= a/b, 而不是 =b/,方向一定不要搞反了。
a = 1
a++
print(a)
在python中是没有++的这种写法

位运算符

按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下: 下表中变量a为60,b为13,二进制格式如下:
a = 0011 1100
b = 0000 1101

a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
在这里插入图片描述

逻辑运算符

Python语言支持逻辑运算符,但是没有其它语言中的&&和||语法,取而代之的是更加人性化的英文单词and or not(全部都是小写字母)。以下假设变量a为10,b为 20:
在这里插入图片描述
x = False
y = True
x and y
False
a = 10
b = 20
a and b
20

成员运算符

yes 与 not是Python独有的运算符(全部都是小写字母),用于判断对象是否某个集合的元素之一,非常好用,并且运行速度很快。返回的结果是布尔值类型的True或者False。
在这里插入图片描述

list1  =  [1,2,3,4,5]
a  =  1
for  i  in  list1:
      if  i  ==  a:
      		print("a在list1中")				
      else:
      		print('a不在list1中')
flag  =  False
for  i  in  list1:
	if	i  ==  a:
		flag  =  True								
		break
if	flag:				
     print("a是list1的元素之一")
else:				
     print("a不是list1的元素")
如果用in运算符来做的话,就不用这么麻烦了
list1  =  [1,2,3,4,5]
a  =  1
if  a  in  list1:
     print("a是list1的元素之一")
else:				
     print("a不是list1的元素")

身份运算符

这也是Python的特色语法(全部都是小写字母)。
在这里插入图片描述
注意 is 与比较运算符 “” 的区别,两者有根本上的区别,切记不可混用:
is用于判断两个变量的引用是否为同一个对象,而
用于判断变量引用的对象的值是否相等!

a  =  [1,2]
b  =  a
b  is  a
Ture
b  ==  a
Ture
b  =  a[:]
b  is  a
False
b  ==  a
Ture
a  =  2
b  =  2.0
b  is  a	
a  ==  b

三目运算符

python中的三目运算符不像其他语言一般的表示方法:判定条件?为真时的结果:为假时的结果。
在python中的格式为:为真时的结果 if 判定条件 else 为假时的结果,例如:

a  =  1
b	=	2
h	=	""
h	=	a-b	if	a>b	else	a+b

如果a>b执行a-b,如果a<b执行a+b

运算符优先级

下表列出了从最高到最低优先级的所有运算符。优先级高的运算符优先计算或处理,同级别的按从左往右的顺序计算(赋值运算符除外,它是按从右往左的顺序)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

落羽凉笙

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

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

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

打赏作者

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

抵扣说明:

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

余额充值