Skip to content

Latest commit

 

History

History
197 lines (136 loc) · 4.86 KB

File metadata and controls

197 lines (136 loc) · 4.86 KB

Python 学习: 基础语法(运算符/表达式)

运算符/表达式

算数运算符

运算符 描述 实例
+ 加 - 两个对象相加 10 + 20 输出结果 30
- 减 - 得到负数或是一个数减去另一个数 20 - 10 输出结果 -10
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 20 * 10 输出结果 200
/ 除 - x除以y 6/ 3 输出结果 2
% 取模 - 返回除法的余数 10 % 2 输出结果 0
** 幂 - 返回x的y次幂 10 ** 20 为10的20次方, 输出结果 100000000000000000000
// 取整除 - 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0

python 中算术运算符一般用作算数运算, 常用的有: + - * / % **

In [9]: 1 + 2
Out[9]: 3

In [10]: 1 - 2
Out[10]: -1

In [11]: 4 * 3
Out[11]: 12

In [12]: 5 /3
Out[12]: 1.6666666666666667

In [14]: 5 // 3 # 在 python 3中 // 代表整除
Out[14]: 1

In [18]: 5 % 3 #取模
Out[18]: 2

In [19]: 5 ** 2 #求次方
Out[19]: 25

python 2 中, / 代表整除, 如需要获取精确值, 需要将任意一个运算数字转换成 float 类型

# in python2

In [1]: 5 / 3
Out[1]: 1

In [2]: 5 / float(3)
Out[2]: 1.6666666666666667

In [3]: float(5) / 3
Out[3]: 1.6666666666666667

比较运算符

python 中比较运算符一般用于数值之间的比较, 返回一个 boolean 类型的值

运算符 描述 实例
== 等于 - 比较对象是否相等 (a == b) 返回 False
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 true.
<> 不等于 - 比较两个对象是否不相等, #python 3 取消 (a <> b) 返回 true。这个运算符类似 !=
> 大于 - 返回x是否大于y (a > b) 返回 False
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写 (a < b) 返回 true
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 true
In [21]: 5 == 5
Out[21]: True

In [22]: 4 != 5
Out[22]: True

In [24]: 5 > 3
Out[24]: True

In [25]: 5 < 3
Out[25]: False

In [26]: 5 >= 3
Out[26]: True

In [27]: 5 <= 3
Out[27]: False

位运算符

不做介绍

逻辑运算符

python 支持逻辑运算符, 如果 a 为 10, b为 20:

运算符 逻辑表达式 描述 实例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False
In [3]: a > b and True
Out[3]: True

In [4]: a > b or True
Out[4]: True

In [5]: not a > b
Out[5]: False

In [6]: True or a > b
Out[6]: True

In [7]: a > b or False
Out[7]: True

In [8]: a > b and False
Out[8]: False

In [9]: a < b and True
Out[9]: False

短路运算

一般情况下, python 使用短路运算, 简单了来说就是 python 解释器如果发现 or 的左边是 True 或者 and 的左边是 False, 就不在执行右边的代码 (不够精确, 请见谅)

In [33]: False and print('a')
Out[33]: False

In [34]: True or print('a')
Out[34]: True

赋值运算符

python 也支持以下的赋值运算符, 以下假设变量a为10,变量b为20:

运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
In [35]: a = 'test'

In [36]: c = 1

In [37]: c += 1

In [38]: c
Out[38]: 2

In [39]: c2 = 2

In [40]: c2 -= 1

In [41]: c2
Out[41]: 1

成员运算符

python 还支持成员运算符, 测试实例中包含了一系列的成员,包括字符串,列表或元组。

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
In [43]: 1 in lst
Out[43]: True

In [44]: 5 in lst
Out[44]: False

In [45]: 1 not in lst
Out[45]: False

In [46]: 5 not in lst
Out[46]: True