python支持以下几种运算符:
以a=10,b=20为例进行计算:
运算符 | 描述 | 实例 |
---|---|---|
+ |
加 | 两个对象相加a + b输出结果30 |
- |
减 | 得到负数或是一个数减去另一个数a - b输出结果-10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串a * b输出结果200 |
/ | 除 | x除以yb / a输出结果2 |
// |
取整除 | 返回商的整数分9//2输出结果4 , 9.0//2.0输出结果4.0 |
% |
取余 | 返回除法的余数b % a输出结果0 |
** |
幂 | 返回x的y次幂a**b为10的20次方,输出结果100000000000000000000 |
使用=
符号赋值
算术运算符后面加上等于号就是符合运算符了:
a = 3
a +=4
上面+=就是复合运算符了
==
检查两个操作数的值是否相等,如果是则条件变为真。如a=3,b=3则(a == b)为 true!=
检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3则(a != b) 为true.<>
检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3则(a <> b) 为true.这个类似于 != 运算符>
检查左操作数的值是否大于右操作数的值,如果是,则条件成立。如a=7,b=3则(a > b) 为true<
检查左操作数的值是否小于右操作数的值,如果是,则条件成立。如a=7,b=3则(a < b) 为false>=
检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。如a=3,b=3则(a >= b) 为true<=
检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。如a=3,b=3则(a <= b) 为true
关系运算符可用于数字、字符、字符串、设置一定元素类型的列表
- and:
x and y
布尔"与",如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 - or:
x or y
布尔"或",如果 x 是 True,它返回True,否则它返回 y 的计算值。 - not:
not x
布尔"非",如果 x 为 True,返回 False。如果 x 为 False,它返回 True。 not(a and b) 返回False
# 逻辑运算符可用于其他数据类型,不要关心返回结果的具体类型,而是关系返回结果是表示True还是False
bool1 = [1] or []
#下面两个表达式分别返回1和2,那么为什么呢,因为Python根据运算符判断,在遇到第一个值时就可以得出结果,所以立即返回遇到的第一个值
bool2 = 1 or 2
bool3 = 2 or 1
函数 | 说明 |
---|---|
int(x [,base ]) | 将x转换为一个整数 |
long(x [,base ]) | 将x转换为一个⻓整数 |
float(x ) | 将x转换到一个浮点数 |
complex(real[,imag ]) | 创建一个复数 |
str(x ) | 将对象x转换为字符串 |
repr(x ) | 将对象x转换为表达式字符串 |
eval(str ) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s ) | 将序列s转换为一个元组 |
list(s ) | 将序列s转换为一个列表 |
chr(x ) | 将一个整数转换为一个字符 |
unichr(x ) | 将一个整数转换为Unicode字符 |
ord(x ) | 将一个字符转换为它的整数值 |
hex(x ) | 将一个整数转换为一个十六进制字符串 |
oct(x ) | 将一个整数转换为一个八进制字符串 |
运算符 | 描述 | 实例 |
---|---|---|
is | is是判断两个标识符是不是引用自一个对象,比较的是内存地址 | x is y, 如果 id(x) 等于 id(y) , is 返回结果 1 |
is not | is not是判断两个标识符是不是引用自不同对象 | x is not y, 如果 id(x) 不等于 id(y). is not 返回结果 1 |
bool1 = {1,2} == {2,1} # True,为什么,集合是无序的
bool2 = [1,2] == [2,1] # False,为什么,列表是有序的
注意:
- is 是比较两个引用是否指向了同一个对象(引用比较)
- == 是比较两个对象是否相等
任何数据类型都可以作为判断的条件,比如整型:当a != 0
时表示true,当a = 0
时表示false
a = 3
if a:
print(a)
+
表示合并,可用于字符串、列表、元组*
表示复制,可用于字符串、列表、元组in
表示元素是否存在,可用于字符串、列表、元组、字典not in
表示元素是否不存在,可用于字符串、列表、元组、字典
使用type(不推荐)
num = 44
isSame = type(num) == int
使用isinstance(推荐)
num = 33
isSame = isinstance(num, (int,float,str))
支持的位运算:&、|、 <<、 >> 、^、 ~
表达式是运算符和操作数所构成的序列