6运算符(很简单我就调难一点的来说)

算数运算符


运算符 名称 实例
+ x + y
- x - y
* x * y
/ x / y
% 取模 x % y
** x ** y
// 地板除(取整除) x // y

对于加减乘除就不做说明,主要说取模幂和整除(#后面为运行结果)

x = 5
y = 2

print(x % y)#1
x = 2
y = 5

print(x ** y) #same as 2*2*2*2*2
x = 15
y = 2

print(x // y)#7

Python 赋值运算符

赋值运算符用于为变量赋值

运算符 实例 等同于
= x = 5(赋值) x = 5
+= x += 3(先加再赋值) x = x + 3
-= x -= 3(先减再赋值) x = x - 3
*= x *= 3(先乘再赋值) x = x * 3
/= x /= 3(先除再赋值) x = x / 3
%= x %= 3(先取模再赋值) x = x % 3
//= x //= 3(先整除再赋值) x = x // 3
**= x **= 3(先幂再赋值) x = x ** 3(后面的3为x的幂)
&= x &= 3(按位与后赋值) x = x & 3
|= x |= 3(按位或后赋值) x = x | 3
^= x ^= 3(按位异或后赋值) x = x ^ 3
>>= x >>= 3(右移后赋值) x = x >> 3
<<= x <<= 3(左移后赋值) x = x << 3

主要解释一下后五个#后面依旧是答案

x = 0x02

x &= 0x01 #按位与后的结果为:0x00
x = 0x02

x  |= 0x01#按位或的结果为:0x03 等同于0011
x = 0x02

x ^= 0x01#按位异或的结果为:0x03 等同于0011
x = 8
x >>= 3#右移后结果为:00000000 00000000 00000000 00000001
'''在这种赋值中首先应该把数转化为十进制8的二级进制
8=00000000 00000000 00000000 00001000然后右移三位赋值给x
x=00000000 00000000 00000000 00000001'''
x = 8

x <<= 3#左移后赋值结果为:00000000 00000000 00000000 01000000

Python 比较运算符

比较运算符用于比较两个值:

运算符 名称 实例
== 等于 x == y
!= 不等于 x != y
> 大于 x > y
< 小于 x < y
>= 大于或等于 x >= y
<= 小于或等于 x <= y

Python 逻辑运算符(在此不做赘述)

逻辑运算符用于组合条件语句:

运算符 描述 实例
and 如果两个语句都为真,则返回 True。 x > 3 and x < 10
or 如果其中一个语句为真,则返回 True。 x > 3 or x < 4
not 反转结果,如果结果为 true,则返回 False not(x > 3 and x < 10)

Python 身份运算符

身份运算符用于比较对象,不是比较它们是否相等,但如果它们实际上是同一个对象,则具有相同的内存位置:

运算符 描述 实例
is 如果两个变量是同一个对象,则返回 true。 x is y
is not 如果两个变量不是同一个对象,则返回 true。 x is not y

x = ["apple", "banana"]
y = ["apple", "banana"]
z = x

print(x is z)#ture

print(x is y)#false

print(x == y)#ture
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x

print(x is not z)#false
print(x is not y)#ture
print(x != y)#false

Python 成员运算符

成员资格运算符用于测试序列是否在对象中出现:

运算符 描述 实例
in 如果对象中存在具有指定值的序列,则返回 True。 x in y
not in 如果对象中不存在具有指定值的序列,则返回 True。 x not in y

x = ["apple", "banana"]

print("banana" in x)#ture
x = ["apple", "banana"]

print("yyw" not in x)#ture

Python 位运算符(在此不做赘述)

位运算符用于比较(二进制)数字:

运算符 描述 实例
& AND 如果两个位均为 1,则将每个位设为 1。
| OR 如果两位中的一位为 1,则将每个位设为 1。
^ XOR 如果两个位中只有一位为 1,则将每个位设为 1。
~ NOT 反转所有位。
<< Zero fill left shift 通过从右侧推入零来向左移动,推掉最左边的位。
>> Signed right shift 通过从左侧推入最左边的位的副本向右移动,推掉最右边的位。
上一篇:C语言之——scanf函数


下一篇:[c语言]西邮Linux兴趣小组2020纳新面试题