Python零基础学习笔记(十一)—— 运算符和表达式2


'''
位运算符:按位运算是把数字看作是二进制数来计算
&  /  ^  ~  <<  >>
'''

#与运算: & (同 1 为 1,否则为 0)
print(5 & 7)

#或运算: | (有 1 为 1,同 0  则 0)
print(5 | 7)

#异或运算:^ (相同为 0,不同为 1)
print(5 ^ 7)

# 取反:~   (1 变为 0, 0 变为 1)
print(~2)

#左移运算符: << ()
#各二进制位全部左移若干位,高位丢弃,低位补零,<< 右侧的数字决定移动几位
print(2<<2)

#右移运算符: >> ()
#各二进制位全部右移若干位,高位丢弃,低位补零,<< 右侧的数字决定移动几位
print(10>>1)


'''
关系运算符和关系运算表达式

关系运算符:
==  !=  >  <  >=  <=

关系运算表达式:
格式: 【表达式1】 关系运算符 【表达式2】
功能:计算【表达式1】和【表达式2】的值
值:如果关系成立,整个关系运算表达式的值为真,否则为假

'''

'''
逻辑运算符(3种)

逻辑与: and
逻辑与运算表达式: 【表达式1】 and 【表达式2】
值:【表达式1】【表达式2】同真为真,有假则为假
**短路原则:【表达式1】 and 【表达式2】 and 【表达式3】 .....and 【表达式n】
从前向后执行,遇到假就立刻停止

逻辑或: or
逻辑或运算表达式: 【表达式1】 or 【表达式2】
值:【表达式1】【表达式2】有一个为真就是真,都是假为假
**短路原则:【表达式1】 or 【表达式2】 or 【表达式3】 .....or 【表达式n】
从前向后执行,遇到真就立刻停止

逻辑非: not
逻辑非运算表达式: not 【表达式1】
值:真变假,假变真
'''


'''
成员运算符

in:如果在指定序列中找到值返回True,否则返回False
not in:如果在指定序列中没有找到值返回True,否则返回False
'''

'''
身份运算符

is:判断两个标识符是不是引用同一个对象
is not:判断两个标识符是不是引用不同的对象
'''

'''
运算符优先级
**
~ +(正) -(负)
* / % //
+(加) -(减)
>> <<
&
^ |
<= < > >=
== !=
= %= += -= //= **= /=
is  is not
in  not in
not  or  and
'''



print(~2)

'''
取反过程:
    内存中都是补码的形式存储
    2在内存中存的补码是                     00000000 00000000 00000000 00000010
    2在内存中存的补码取反                   11111111 11111111 11111111 11111101
    求原码(除符号位,逐位取反,末位+1)   10000000 00000000 00000000 00000011
    则结果为-3             
'''


上一篇:天下武功唯快不破——实验吧


下一篇:C#编程:方法签名-8