freeCodeCamp/guide/chinese/python/basic-operators/index.md

5.6 KiB
Raw Blame History

title localeTitle
Basic Operators 基本运营商

基本运营商

运算符是告诉解释器执行特定操作的符号(即算术,比较,逻辑等)

下面列出了Python中不同类型的运算符

  1. 算术运算符
  2. 关系运算符
  3. 按位运算符
  4. 分配运营商
  5. 逻辑运算符
  6. 会员运营商
  7. 身份运营商

算术运算符

算术运算符将两个操作数作为输入,执行计算并返回结果。

考虑表达式**“a = 2 + 3”** 。这里, 23是_操作数_ +是_算术运算符_ 。操作的结果存储在变量a中。

操作者

描述

用法

对操作数执行添加

12 + 3 = 15

-

在操作数上执行减法。 从左操作数中减去右操作数

12 - 3 = 9

*

对操作数执行乘法运算

12 * 3 = 36

/

对操作数执行分区。 将左操作数除以右操作数

12/3 = 4

注意当使用两个整数时Python 2和Python 3之间的结果不同。

Python 2中5/2 = 2

Python 3中5/2 = 2.5

对操作数执行模数。 返回将左操作数除以右操作数时获得的余数

163 = 1

**

执行指数操作。 左操作数被提升到右操作数的幂

12 ** 3 = 1728

//

执行Floor Division操作。 返回右操作数跳转左操作数后获得的商的整数部分

18 // 5 = 3

注意要使结果为浮点类型其中一个操作数也必须是float类型。

关系运算符

关系运算符用于比较两个操作数以确定它们之间的关系。它根据条件返回一个布尔值。

操作者

描述

用法

>

如果左操作数大于右操作数则返回True 否则返回False

12> 3返回True

<

如果右操作数大于左操作数则返回True 否则返回False

12 <3返回False

==

如果两个操作数相等则返回True 否则返回False

12 == 3返回False

> =

如果左操作数大于或等于右操作数则返回True 否则返回False

12> = 3返回True

<=

如果右操作数大于或等于左操作数则返回True 否则返回False

12 <= 3返回False

=

如果两个操作数不相等则返回True 否则返回False

12= 3返回True

按位运算符

按位运算符逐位对操作数执行操作

对于以下用法考虑a = 2二进制表示法10和b = 3二进制表示法11

操作者

描述

用法

对操作数执行按位AND运算

ab = 2 二进制10和11 = 10

|

对操作数执行按位OR运算

一个| b = 3 二进制10 | 11 = 11

^

对操作数执行按位XOR运算

a ^ b = 1 二进制10 ^ 11 = 01

对操作数执行按位NOT运算 翻转操作数中的每一位

~a = -3 二进制00000010=11111101

>>

执行按位右移。将左操作数的位移位,右移指定为右操作数的位数

a >> b = 0 二进制00000010 >> 00000011 = 0

<<

执行按位左移。移位左操作数的位,左移指定为右操作数的位数

a << b = 16 二进制00000010 << 00000011 = 00001000

分配运营商

赋值运算符用于为变量赋值。这通常与其他运算符(如算术,按位)组合,其中对操作数执行操作,结果分配给左操作数。

考虑以下示例, a = 18 。 Here =是赋值运算符结果存储在变量a中。 a + = 10 。这里+=是赋值运算符结果存储在变量a中。这与a = a + 10相同。

操作者

用法

=

a = 5.将值5分配给变量a

+ =

a + = 5相当于a = a + 5

- =

a - = 5相当于a = a - 5

* =

a * = 3相当于a = a * 3

/ =

a / = 3相当于a = a / 3

=

a= 3相当于a = a3

** =

a ** = 3相当于a = a ** 3

// =

a // = 3相当于a = a // 3

=

a= 3相当于a = a3

| =

a | = 3相当于a = a | 3

^ =

a ^ = 3相当于a = a ^ 3

>> =

a >> = 3相当于a = a >> 3

<< =

a << = 3相当于a = a << 3

逻辑运算符

逻辑运算符用于基于多个条件做出决策。 Python中使用的逻辑运算符是 and or not

操作者

描述

用法

如果两个操作数均为True则返回True 否则返回False

a和b

要么

如果任何一个操作数为True则返回True 否则返回False

a或b

如果操作数为False则返回True 否则返回False

不是

会员运营商

成员资格运算符用于标识任何序列(列表,字符串,元组)的成员资格。 innot in会员运营商

in如果在序列中找到指定的值则返回True。否则返回False。 not in返回true如果指定的值不是序列中发现的。否则返回False。

示例用法
a = [1,2,3,4,5] 
 
 #Is 3 in the list a? 
 print 3 in a # prints True 
 
 #Is 12 not in list a? 
 print 12 not in a # prints True 
 
 str = "Hello World" 
 
 #Does the string str contain World? 
 print "World" in str # prints True 
 
 #Does the string str contain world? (note: case sensitive) 
 print "world" in str # prints False 
 
 print "code" not in str # prints True 

身份运营商

身份运算符用于检查两个变量是否共享相同的内存位置。 isis not身份运营商

如果操作数引用同一个对象, is返回True。否则返回False。 如果操作数不引用同一对象, is not返回True。否则返回False。

请注意,两个值相等时,无需暗示它们是相同的。

示例用法
a = 3 
 b = 3 
 c = 4 
 print a is b # prints True 
 print a is not b # prints False 
 print a is not c # prints True 
 
 x = 1 
 y = x 
 z = y 
 print z is 1 # prints True 
 print z is x # prints True 
 
 str1 = "FreeCodeCamp" 
 str2 = "FreeCodeCamp" 
 
 print str1 is str2 # prints True 
 print "Code" is str2 # prints False 
 
 a = [10,20,30] 
 b = [10,20,30] 
 
 print a is b # prints False (since lists are mutable in Python)