Python 极简教程(六)运算符

运算符,我们日常生活中使用的加减乘除,都是运算符的一种。当然这种一般我们称为算术运算符,用于处理数字运算的。
但是在计算机语言中,还有很多的运算符。用于处理不用的情况。
主要有以下几类:

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 成员运算符

算术运算符

算术运算符就是日常所用的加减乘除,这些运算符在计算机语言中可以用于数值类型的运算。

运算符 描述 例子
  • | 相加 | 5+6 结果为 11
  • | 相减 | 5-3 结果为 2
  • | 乘法 | 3 * 6 结果为 18
    ** | 取幂,x 的 y 次方 | 3 ** 3 结果为 27
    / | 除法,普通除法 | 5/2 结果为 2.5
    // | 取整除,也叫地板除,只取商的整数部分 | 5//2 结果为 2
    % | 取余,常用于奇偶和是否能被整除的判断 | 5 % 2 结果为 1

加法和乘法还可以用于字符串的运算:

>>> s1 = 'hello'
>>> s2 = 'world'
>>> s1 + s2   # 字符串的拼接
'helloworld'
>>> s1 * 3  # 字符串乘几,相当于把该字符串重复多少次。
'hellohellohello'

比较运算符

比较运算符也就是判断是否相等、大于、小于等。返回的结果都是布尔值,主要用于条件判断。

运算符 描述 例子
== 等,判断是否相等(必须两个等号),相等返回 True,不等返回 False 5==6 返回 False
!= 不等,判断是否不相等,不等则返回 True,相等返回 False 5 != 6,返回 True

| 大于,左边大于右边返回 True,否则返回 False| 5 > 4,返回 True
< | 小于,左边小于右边返回 True,否则返回 False | 5 < 3,返回 False
=|大于或等于| 5 >= 5,返回 True
<= |小于或等于| 4 <= 6, 返回 True

比较运算符也可以用在字符串上,用字符串比较的话,就是以ASCII码的顺序进行比较的。也就是小写字母 > 大写字母 > 数字

>>> 'nemo' > 'hello'   # n 在 h 后面,所以 n 比 h 大
True

数值类型不能和字符串进行比较运算。

>>> 'a' > 1  # 比较运算符 > 不支持在 str 类型和 int 类型之间比较
TypeError: '>' not supported between instances of 'str' and 'int'

逻辑运算符

逻辑运算符也叫布尔运算符,主要用于将多个条件运算进行连接。Python 中的逻辑运算符直接简单粗暴的使用英语单词,而不是各种符号,这也就很好记了。

运算符 描述 例子
and 与运算,and 前后条件同时为 True 时返回 True,有一个不为 True,则返回 False 3 > 2 and 2 > 4 返回,False
or 或运算,or 前后条件只要有一个为 True 则返回 True,只有当前后两个条件都为 False 才返回 False 3 > 2 or 2 > 4,返回 True
not 非运算,not 的后面跟条件,对条件的结果取否 not 3 > 2,返回False

成员运算符

成员运算符只有 in 和 not in,主要用于判断某个值是否在某个序列(后面再讲)中。

运算符 描述 例子
in 判断某个值是否在某个序列中,在的话返回 True,不在则返回 False 'h' in 'hello',返回 True
not in 判断某个值是否不在某个序列中,不在的话返回 True,在的话返回 False 'x' not in 'hello',返回 True

身份运算符

在 Python 中有一种身份运算符is,用来判断变量的对象是否是同一对象。在数据类型中我们所过,在 Python 中所有的数据类型都是对象。也就是所变量中储存的都是对象。
在 Python 中有一个专门用来检查是否同一对象的函数 id()id()用来返回对象在内存中的地址。如果同一个内存地址存储的内容就是同一个对象。

>>> a = 1
>>> b = 1.0
>>> id(a)
1784179728
>>> id(b)
1740733557424
>>> a is b
False
>>> c = 1
>>> id(c)
1784179728
>>> a is c  # 相当于 id(a) == id(c)
True

身份运算符先做了解,如果有疑问可以在评论中提出,如果实在不能理解,可以先跳过,前期一般来说很少涉及到!

本节思考
3 > 2 > 1 ,返回为何?
(3 > 2) > 1,返回又是什么?为什么?
(3 > 2) == 1 的返回呢?有没有明白点什么?
'a' < 'A' 呢?为什么?

posted @ 2019-03-27 21:39  小满测试  阅读(227)  评论(0编辑  收藏  举报