2.2千峰教育运算符与表达式续集--自制随堂笔记

位运算符:

按位运算符是把数字看成二进制数来进行计算
& 按位与运算符
相应的位数都为1,则该位的结果是1,否则为0

print(5 & 7)
"""
101
111
----
101
"""

| 按位或运算符
两个二进制位有一个1时,结果为1

print(5 | 7)
"""
101
111
----
111
"""

^ 按位异或运算符
二进制的两位相异时,结果为1

print(5 ^ 7)
"""
101
111
----
010
"""

~ 按位取反运算符
每个二进制数据位取反,1变0 ,0变1

print( ~5 )

补码 11111111111111111111111111111111
原码 1000000000000000000000000001

<< 左移动运算符
各二进制位全部移动若干位,由<<右侧的数字决定,高位丢弃,低位补零

print(2 <<2)
000000010
000001000

>> 右移动运算符
各二进制位全部右移动若干位,由>>右侧的数字决定

print(13 >> 2)
00000001101
00000000011

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

==!=><>=<=
等于不等于大于小于大于等于小于等于

关系运算表达式
1 + 2 > 3 +4
格式:
表达式1 关系运算符 表达式2
功能:
计算“表达式1”和“表达式2”的值
值:
如果关系成立,整个关系运算符表达式的值为真,否则为假

逻辑运算符

逻辑与
and
逻辑与运算表达式:
表达式1 and 表达式2
值:
如果表达式1的值为真,表达式2的值也为真,整体逻辑与运算表达式的值为真
如果表达式1的值为真,表达式2的值也为假,整体逻辑与运算表达式的值为假
如果表达式1的值为假,表达式2的值也为真,整体逻辑与运算表达式的值为假
如果表达式1的值为假,表达式2的值也为假,整体逻辑与运算表达式的值为假
【有一个为假就为假】

num1 = 10
num2 = 20
if (num1 + 1) and (num2 + 1):
	print("*******************")
print(num1, num2)

短路原则
表达式1 and 表达式2 and 表达式3 and ······ 表达式3 and ········ and 表达式n

逻辑或
or
逻辑或运算表达式:
表达式1 or 表达式2
值:
表达式1的值为真,表达式2的值为真,逻辑或运算表达式为真
表达式1的值为真,表达式2的值为假,逻辑或运算表达式为真
表达式1的值为假,表达式2的值为真,逻辑或运算表达式为真
表达式1的值为假,表达式2的值为假,逻辑或运算表达式为假
【有一个为真就为真】
短路原则
表达式1 or 表达式2 or 表达式3 or ······ 表达式3 or ········ or 表达式n

num3 = 0
num4 = 1
if num3 or num4:
	print("%%%%%%%%%%%%%%%")

逻辑非
not
逻辑非运算符表达式:
not 表达式
值:
如果表达式的值为真,整体逻辑非运算表达式为假
如果表达式的值为假,整体逻辑非运算表达式为真
【颠倒黑白】

if not 0:
	print("[==----------")

成员运算符

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

身份运算符

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

运算符优先级

最高级1,**
2,~ + - 正负号(一元加减)
3, * / % //
4, + -
5, << >>
6, &
7, - |
8, <= < > >=
9,== !=
10,= %= += -= //=
11,is is not
12,in not in
13,not or and

从控制台输入一个年份,判断是否是闰年

能被4整除但是不能被100整除 或者 能被400整除

year = int(input("请输入年份:"))
if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):
	print("yes")
else:
	print("no")

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值