一.运算符
1.1 算术运算符
基本有的加(+),减(-),乘(*)。除(/)会将结果转换为小数,介绍一下其他的方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| a = 10 b = 3 print(a % b)
a = 2 b = 3 print(a ** b)
a = 10 b = 3 print(a // b)
|
1
8
3
1.2 比较运算符
高级一点的就是 <=,>=,!=,简单一点的,==,<,>。
1.3 逻辑运算符(难)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| x = 5 y = 10 re = x > 3 and y < 20 print(re)
x = 5 y = 10 re = x and y print(re) a = 0 b = 5 re = a and b print(re)
x = 5 y = 10 re = x < 3 or y < 20 print(re)
a = 0 b = 5 re = a or b print(re) A = 5 B = 0 re1 = A or B print(re1)
x = 5 re = not x print(re) re1 = not x > 3 print(re1) re2 = not False print(re2)
|
True
10
0
True
5
5
False
False
True
补充:a< x < y 可以看成是a< x and x < y
1 2 3 4 5 6 7 8 9
| x = 10 re = 100 < x < 30 print(re) ''' 但其他的编程语言会先执行100 < x 然后判断(100 < x) < 30 100 < x 结果为0(False),而 0 < 30 结果为1(True),所以其他编程语言会返回True '''
|
False
1.4 赋值运算符
最简单的是 = ,其后所有算术运算符都可以写成+=,*=这种形式。= 是一种赋值运算符,先执行右边的表达式,再把结果赋值给左边的变量。
注:a++和a–这类运算在python中是不合法的
1.5 位运算符
主要应用于二进制,若是其他整数则转换为二进制,然后进行计算,默认返回整数值。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| a = 0b1010 b = 0b0101 print(a & b)
a = 0b1010 b = 0b0101 print(a | b)
a = 0b1010 b = 0b0100 print(a ^ b)
a = 0b1010 print(~a)
a = 10 print(a << 2)
|
0
15
14
-11
40
一个30年的笔试题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
x = 10 y = 20
''' python里可以用x,y = y, x结构赋值 其他语言不行,这里简单的可以使用Temp变量即 c = a a = b b = c '''
x = x ^ y y = x ^ y x = x ^ y print(x,y)
|
具体为什么能行呢,可以自己在草稿纸上演算一下两个数的异或,再用异或后的值再与其中一个异或一次,就会得到另一个了。
1.6 身份运算符
is,is not 其要求是不是同一个对象,而 == 判断是不是同一个数值。
1 2 3 4
| a = [1, 2, 3] b = [1, 2, 3] print(a == b) print(a is b)
|
True
False
1.7 成员运算符
就是in 和 not in。
1.8 三目运算符
1 2 3 4 5 6 7 8
| a = 1 b = 2 max = a if a>b else b print(max)
|
二.表达式
就是一行代码(最小单位),是一个数值都行,多行表达式组成语句,多条语句组成代码块,然后就是程序。
举几个简单的表达式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| a = 5 b = 3 result = a + b result = a / b
a = 5 b = a + 3
if (a := 5) > 0: print(a)
a = [1, 2, 3, 4] result = [x * 2 for x in a]
|