[分享] Python3基础 Lesson 2
921 查看
0 回复
 楼主 | 发布于 2018-03-25 | 只看楼主
分享到:

1. 逻辑操作符

由于所有的Python变量实际上都是对象引用,有时询问两个或者更多的对象引用是否指向相同的对象是有必要的。is操作符是一个二元操作符,如果其左端的对象引用与右端的引用指向的是同一对象,则会返回true。实例:

a = ["what", 3, None]
b = ["what", 3, None]
print(a is b)
b = a
print(a is b)

输出结果:

False

True

虽然a与b在最初设置为同样的列表值,但是列表本身是以单独的list对象存储的,因此,在第一次使用is做判断时,返回的是false。而第二次我们将a的值赋予b,此时a和b为同样存储地址的同样对象,所以为True

与is判断语句相类似的否定判断:is not

a = ["what", 3, None]
b = ["what", 3, None]
print(a is not b)

输出结果:

True


2. 比较操作符

Python提供了二进制比较操作符的标准集合:

等于: ==

大于: >

小于: <

小于等于: <=

大于等于:>=

不等于: !=

实例如下:

a = 2
b = 6
print(a == b)
print(a < b)
print(a <= b, a != b, a >=b, a >b)

输出结果:

False

True

True True False False

Python比较操作还有一个特别好用的特性是可以进行合链比较。不再需要进行两次单独的比较操作。

a = 6
print (0 <= a <=10)

输出结果:

True


3. 成员操作符

对序列或者集合这一类数据类型,比如字符串、列表或者元组,我们可以使用操作符in来测试成员关系,用not in来测试非成员关系。例如:

a = ["what", 3, None]
print(3 in a)
print("one" not in a)

输出结果:

True

True

对列表和元组,in操作符使用线性搜索,对非常大的组合类型,速度可能会比较慢。但是对于字典或者集合,in操作符可以非常快。

a = "JJJJJ aaaa DDDD xxxxx"
print("c" in a)
print("J" in a)

输出结果:

False

True


4. 逻辑运算符

Python提供3个逻辑运算符: and、or 与not.  and与or都使用short-circuit逻辑,并返回决定结果的操作数(而不是返回布尔值),not操作符却总是返回布尔型结果。如下例:

a = 5
b = 2
c = 0
print(a and b)
print (b and a)
print(b and c)
print(a or b)
print(b or c)
print(not b)

输出结果:

2

5

0

5

2

False


NEXT。。。


(0 ) (0 )
回复 举报
  • 发表回复
    0/3000





    举报

    请选择举报类别

    • 广告垃圾
    • 违规内容
    • 恶意灌水
    • 重复发帖

    全部板块

    返回顶部