Python 语言支持以下类型的运算符
1. 算术运算符
+、-、*、/、%、**、//
** 返回x的y次幂
// 取整除 - 向下取接近商的整数(//得到的并不一定是整数类型的数,它与分母分子的数据类型有关系)
print(7//2)
print(7.0//2)
print(7//2.0)
python如果就 python=!_运算符
2. 比较(关系)运算符
、<、>=、<=、==、!=
非常简单, 不再赘述。
3. 赋值运算符
=、+=、-=、*=、/=、%=、**=、//=、:=。
主要讲解 :=, 此运算符称之为 海象运算符。可在表达式内部为变量赋值。为Python3.8 版本新增运算符。
海象运算符::=,python3.8中引入。
这玩意儿是一个语法糖,我感觉用途也不大,对于不大熟悉的人来说,反倒是不友好了。所以说这玩意也不要乱用。会降低代码的可读性。
什么时候可能用到呢?
# 如果我想写判断字符长度是否大于10,如果大于10,则输出该字符串的长度。一般的, 我们都会这样写:
string = input('Please input a word:> ')
if len(string) > 10:
print(f'This length of word is {len(string)}.')
# 很明显, 上述的len(string)出现了2次。
接下来运用海象运算符来体验一下。
string = input('Please input a word:> ')
if (n := len(string)) > 10:
print(f'This length of word is {n}.')
# 这样写的话len(string)就只出现了一次,
# 因为在len方法执行的时候就把值赋给了变量n,
# 所以我们后面的代码就可以使用n变量。
4. 逻辑运算符
and、or、not。
等价C/C++中的 &&、||、!。
# Notice:用作布尔表达式时, 下面的值都将被解释为假:False, None, 0, "", (), [], {}
if False or None or 0 or "" or () or [] or {}:
print('Ok.')
else:
print("No.")
5. 位运算符
&、|、^、~、<<、>>。
1.
6. 成员运算符
in:如果在指定的序列中找到值返回 True,否则返回 False。
not in:如果在指定的序列中找到值返回 True,否则返回 False。
print('a' in ['a', 'b']) # True
print('a' not in ['a', 'b']) # False
7. 身份运算符
(1) is:is 是判断两个标识符是不是引用自一个对象。
x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False。
(2) is not:is not 是判断两个标识符是不是引用自不同对象。
x is not y , 类似 id(x) != id(y)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
(3) Notice:注: id() 函数用于获取对象内存地址。
a= 10
b= 20
print(a is b) # False
print(a is not b) # True
(4) is与==的区别
is 用于判断两个变量引用的对象是否为同一个, == 用于判断引用变量的值是否相等。