一、运算符优先级

以下表格列出了从最高到最低优先级的所有运算符:

运算符

描述

**

指数运算(优先级最高)

~ + -

按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)

* / % //

乘,除,取模和取整除

+ -

加法减法

>> <<

右移,左移运算符

&

位 'AND'

^ |

位运算符

<= < > >=

比较运算符

<> == !=

等于运算符

= %= /= //= -= += *= **=

赋值运算符

is is not

身份运算符

in not in

成员运算符

not>and>or

逻辑运算符

可以用()来控制优先级,()内的优先计算

二、位运算符

位运算符是将数字看做二进制来进行计算的。


运算符

描述

&

按位与运算,同为1才为1,否则为0

|

按位或运算,只要有一个为1就为1,否则为0

^

按位异或运算,不同为1,相同为0

~

按位取反

<<

左移,高位丢弃,低位补0

>>

右移

a = 60
b = 13
print(a & b) # 同为1结果为1,否则为0
print(a | b) # 只要有一个是1,结果就是1
print(a ^ b) # 相同为0,不同为1
print(~b) # 按位取反,把1变成0,把0变成1,相当于 -(b+1)
a ^ b ^ b 的结果是:a

三、条件判断语句

if 判断语句

格式:

if 条件:

条件成立时执行的语句

例如:

age = 20

if age >= 18:

print("你已经成年了")

if else 判断语句

格式:

if 条件:

条件成立时执行的语句

else:

条件不成立时执行的语句

例如:

age = 17
if age >= 18:
print("你已经成年了")
else:
print("你还未成年")

elif 语句

格式:

if 条件1:

条件1成立时执行的语句

elif 条件2:

条件2成立时执行的语句

elif 条件3:

条件3成立时执行的语句

......

else:

上述条件都不成立时执行的语句

demo
score = 77
if score>=90 and score<=100:
print('本次考试,等级为A')
elif score>=80 and score<90:
print('本次考试,等级为B')
elif score>=70 and score<80:
print('本次考试,等级为C')
elif score>=60 and score<70:
print('本次考试,等级为D')
elif score>=0 and score<60:
print('本次考试,等级为E')

if 嵌套

格式:

if 条件1:

满足条件1 执行的语句

if 条件2:

满足条件2 执行的语句

else:

不满足条件2 执行的语句

else:

不满足条件 执行的语句

示例:

player = int(input('请输入您要出的拳【0:石头 1:剪刀 2:布】:'))
computer = random.randint(0, 2)
print('电脑出的是:%d' % computer)
if player == computer:
print('平局')
elif player == 0 and computer == 1 or player == 1 and computer == 2 or player == 2 and computer == 0:
print('你赢了!!')
else:
print('很遗憾,你输了!!')

循环语句

while 循环

格式:

while 循环条件:

循环体

控制循环的语句

demo
result = 0
i = 0
while i < 100:
i += 1 # 控制循环 每次循环加1
if not i % 2:
result = result + i # 0+1+2+3+...+99
print(result)
break 和 continue
break可以跳出循环,continue可以跳出本次循环

while...else 语句

格式:

while 循环条件:

循环体

控制循环的语句

else:

循环条件不满足时执行的语句

demo
i = 0
while i < 10:
i += 1
print(i)
if i == 5:
break
else:
print('hehe')

循环嵌套

示例:打印九九乘法

row = 1
while row <= 9:
col = 1
while col <= row:
print("%s * %s =" % (col, row), row * col, end="\t")
col += 1
print()
row += 1

for 循环

在python中可以使用for循环遍历任何序列,如:一个列表、字典、字符串等任何可迭代对象

for 循环的格式

for 临时变量 in 需要遍历的对象:

满足条件时执行的代码块

for 循环的使用

遍历字符串

for x in 'hello':
print(x)

输出结果:

h

e

l

l

o

打印数字

for x in range(5):
print(x)

输出结果:

0

1

2

3

4