一、运算符优先级
以下表格列出了从最高到最低优先级的所有运算符:
运算符 | 描述 |
---|---|
** | 指数运算(优先级最高) |
~ + - | 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 '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