python学习笔记四 之 运算符

python运算符

算术运算符

  • 运算符可对两个及以上值进行运算;
运算符 功能
+ 两个对象相加,如果对象均为字符串则将两个字符串拼接在一起
- 得到负数或是一个数减去另一个数
* 乘 — 两个数相乘,如果字符串承数字就是复制字符串
/ 除 — 两个对象相除,结果均为浮点型
% 取模 - 返回除法的余数,无余数就为0
  • 幂 — 返回x的y次幂

格式 a**b;

102
在这里插入图片描述
1001/2
在这里插入图片描述

  • // 取整除 — 返回商的整数部分(向下取整)

格式 a//b;
在这里插入图片描述

在这里插入图片描述

赋值运算符

=
  • 赋值运算符,将等号右边值赋值给左边;
  • a=5,即将5赋值给a,即a的值变为5;
+=
  • a+=5,等同于a=a+5;
-=
  • a-=5,等同于a=a-5;
*=
  • a*=5,等同于a=a*5;
/=
  • a/=5,等同于a=a/5;
%=
  • a%=5,等同于a=a%5;
**=
  • a**=5,等同于a=a**5;
//=
  • a//=5,等同于a=a//5;

注意: 对浮点数做算术运算时,结果也为浮点数;

比较运算符(关系运算符)

>

比较左侧值是否大于右侧值,成立返回True,否则返回False

  • a=1>2,a即为False;b=2>1,b即为True;
  • ‘2’>‘1’、‘2’>‘11’、‘b’>‘a’、‘b’>'ac’均成立,字符串比较时比较字符串的Unicode编码,比较unicode编码的时逐位比较的,从第一位比较到最后一位,直到比出结果为止;
<

比较左侧值是否小于右侧值,成立返回True,否则返回False

  • a=1<2,a即为True;b=2<1,b即为False;
  • ‘1’<‘2’、‘11’<‘2’、‘a’<‘b’、‘ac’<'b’均成立,字符串比较时比较字符串的Unicode编码,比较unicode编码的时逐位比较的,从第一位比较到最后一位,直到比出结果为止;
  • 1<2<3,表示2>1且2<3;
>=

比较左侧值是否大于或等于右侧值,成立返回True,否则返回False

  • a=1>=2,a即为False;b=2>=1,b即为True;
  • ‘2’>=‘1’、‘2’>=‘11’、‘b’>=‘a’、‘b’>='ac’均成立,字符串比较时比较字符串的Unicode编码,比较unicode编码的时逐位比较的,从第一位比较到最后一位,直到比出结果为止;
<=

比较左侧值是否小于或等于右侧值,成立返回True,否则返回False

  • a=1<=2,a即为True;b=2<=1,b即为False;
  • ‘1’<=‘2’、‘11’<=‘2’、‘a’<=‘b’、‘ac’<='b’均成立,字符串比较时比较字符串的Unicode编码,比较unicode编码的时逐位比较的,从第一位比较到最后一位,直到比出结果为止;
==

比较两侧值是否等于右侧值,成立返回True,否则返回False

  • a=1==2,a即为False;
!=

比较两侧值是否不等于右侧值,成立返回True,否则返回False

  • a=1!=2,a即为True;

注意: ==和!=比较对象的value;

is

比较两个对象是否是同一个对象,成立返回True,否则返回False

  • a=1is2,a即为False;
is not

比较两个对象是否不是同一个对象,成立返回True,否则返回False

  • a=1 is not 2,a即为True;

注意: is和is not比较对象的id;

逻辑运算符

  • 用来进行逻辑判断;
not 逻辑非
  • 对not 右侧的值进行非运算(取反运算)
  • 对bool,not将其值取反,如 a=True,not a=False;
  • 对非bool值,not会将其先转为bool值在取反,如a=0、a=0.0、a="",not a都为True;
and 逻辑与
  • 对and两侧的值进行逻辑与运算(两个均为True结果为True,否则为False)
  • python中进行and运算时,若第一个值为False则不会管后面的值就直接返回False;
or 逻辑或
  • 对and两侧的值进行逻辑或运算(两个中有一个True结果为True,否则为False)

非bool的逻辑运算符

  • 当对非bool值进行与运算、或运算时,python会将参与的值当做bool值,再进行运算,最后返回原值;
    在这里插入图片描述
    在这里插入图片描述
  • 与运算时,若第一个值为False,则直接返回第一个值;否则直接返回第二个值;
  • 或运算时,若第一个值为Ture,则直接返回第一个值;否则直接返回第二个值;

条件运算符(三元运算符)

**结构:语句1 if 条件表达式 else 语句2 **
执行流程

  1. 对条件表达式值进行判断;
  2. 结果为True,则执行语句1,并返回结果;
  3. 结果为 False,则执行语句1,并返回结果;
    在这里插入图片描述

运算符优先级

  • 运算符优先级从高到低
运算符 说明
** 指数 (最高优先级)
+ - 加号和减号,表示正数或负数
* / % // 乘,除,取模和取整除
+ - 加加法减法
& 位 ‘AND’
^ | 位运算符not、or
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
+ + - 加号和减号,表示正数或负数
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符
  • 括号可以改变优先级,将需要先算的()起来即先算;
发布了42 篇原创文章 · 获赞 21 · 访问量 2876

猜你喜欢

转载自blog.csdn.net/Late_whale/article/details/104041470