运算符与表达式
1、算术运算符
+加
-减
*乘
/ 除
% 求模,取余数
** 幂运算 a**b = a^b a的b次方
// 取整 ,返回商的部分
被除数 ÷ 除数 = 商…余数
表达式不改变变量本身的大小
num1 = 20
num2 = 30
print(num1 + num2)
print(num1 - num2)
print(num1 * num2)
print(num1 / num2)
print(num1 % num2)
print(num1 ** num2)
# 类似pow(num1,num2)
print(pow(num1,num2))
print(num1 // num2)
输出:
50
-10
600
0.6666666666666666
20
1073741824000000000000000000000000000000
1073741824000000000000000000000000000000
0
2、判断运算符
== 判断是否相等
= 判断是否大于等于
<= 判断是否小于等于
!= 不等于
大于 >
< 小于
注意:两个对象相比较的时候,返回的是布尔类型【True或者False】
num1 = 20
num2 = 30
print(num1 == num2)
print(num1 >= num2)
print(num1 <= num2)
print(num1 != num2)
print(num1 > num2)
print(num1 < num2)
print(2<3<4)
输出:
False
False
True
True
False
True
True
3、赋值运算符
赋值运算符
= 赋值运算符
作用:给变量进行赋值
+= 加法赋值运算符 a += b 相当于 a = a + b
-= 减法赋值运算符 a -= b 相当于 a = a - b
*= 乘法赋值运算符 a *= b 相当于 a = a * b
/= 除法赋值运算符 a /= b 相当于 a = a / b
%= 求模赋值运算符 a %= b 相当于 a = a % b
**= 幂赋值运算符 a **= b 相当于 a = a ** b
//= 取整赋值运算符 a //= b 相当于 a = a // b
age = 18
name = "ldc"
a = 10
b = 20
print(a + b)
a += b
a = a + b
print(a)
a -= b
print(a)
a *= b
print(a)
a /= b
print(a)
a %= b
print(a)
a **= b
print(a)
a //= b
print(a)
输出:
30
50
30
600
30.0
10.0
1e+20
5e+18
4、位运算符
进行位运算时,首先需要把它转为二进制来计算
& 按位与
| 按位或
^ 按位异或 ,当两对应的二进位相异时,结果为1
~ 按位取反
<< 左移
>> 右移
print(3 & 2)
print(3 | 2)
print(3 ^ 2)
print(3 & -1)
'''
0000 0011 3的补码
1111 1111 -1的补码
&
0000 0011 结果是 3
'''
print(3 << 2 )
print(3 * 2 **2) # m左移n位,结果等于m*2^n
print(3 << 3 )
print(3 * 2 ** 3)
5、成员运算符 成员运算符 in 【在】和 not in【 不在】
一般情况下在for循环中使用
判断指定的值是否在序列中存在,若存在则返回True,否则返回False
list1 = [1,2,3,4]
print(2 in list1)
print(5 in list1)
list2 = ['lili','jiajia','yiyi']
print('lili' in list2)
输出:
True
False
True
6、身份运算符 is 和 is not
is : 结果为True,引用的是同一个对象
判断两个变量是不是同一个对象
实质上比较的就是地址
is not :结果为True,表示引用的不是同一个对象
a = 5000
b = 5000
print(a is b)
输出:
False
六、拓展
print(1)
print("hello")
print([1,2,3,4])
print((1,2,3,4,5))
# 格式化输出
'''
格式化输出时,使用”%“
使用占位符的个数、类型与后面参数的个数、类型都要保持一致
参数的顺序与占位符保持一致
%d 整形
%f 浮点型
%s 字符串
%c 字符
'''
print("hello,I'm %d,not %d.How %s" %(18,19,"age are you"))
'''
字符串比较的时候比较的是ASCII码值的大小
'''
if 'bba' > 'b':
print("@@@@@@@")
else:
print("######")
# ord()返回字符的ASCII值
print(ord('a'))
# chr()返回ASCII值代表的字符
print(chr(97))
输出:
1
hello
[1, 2, 3, 4]
(1, 2, 3, 4, 5)
hello,I'm 18,not 19.How age are you
@@@@@@@
97
a