1.算数运算符:
-: 减,两个对象相减
*: 乘,两个对象相乘
/: 除,两个对象相除得到返回值会保留整数部分与小数部分
//:整除,相除后得到的返回值保留整数部分
%: 取余,相除后会返回余数
**: 幂,取一个数的n次方
2.比较运算符:
==:等于,两个对象相等则返回True,否则返回Flase
!=:不等于,两个对象相等则返回Flase,否则返回True
>=: 大于等于
<: 小于
=<: 小于等于
3.赋值运算:
=: 简单赋值运算
+=:加法赋值运算
-=: 减法赋值运算
*=: 乘法赋值运算
/=: 除法赋值运算
//=: 整除赋值运算
%=:取余赋值运算
**=: 幂赋赋值运算
4.链式赋值
z=y=x=10
print(x,y,z)
5.交叉赋值
m=10
n=20
m,n=n,m # #交叉赋值
print(m,n)
6.解压赋值:
nums = [11,22,33,44,55]
a,b,c,d,e = nuns # nums包含多个值,就好比一个压缩包,解压赋值因此得名
print(a,b,c,d,e)
7.*_的运用:
salaries=[111,222,333,444,555]
x,y,z*_=salaries=[111,222,333,444,555] #取前三个值
print(x,y,z)
#*—会将没有对应关系的值存成列表,*—只能帮我们取两头的值,无法取中间的值
8.逻辑运算符:
not,and,or 的基本使用
not>and>or
not与紧跟其后的那个条件是一个不可分割的一个整体
not: 就是把紧跟其后的那个条件取反
print(not True)
and: and用来链接左右两个条件,两个结果同时为True,最终结果才为真
print(True and 10>3)
print(True and 10>3 and 10 and 0)
or: or是用来链接左右两个条件,两个条件但凡有一个为True,即最终结果就为True
print(3>2 or o)
9.成员运算符:
in:
print("egon" in "hello egon") #判断一个字符串是否在一个大字符串中间
print("e" in "hello egon") #判断一个字符串是否在一个大字符串中间
not in:
print("egon" notin "hello egon")
10.可变不可变类型:
可变类型:值改变,id不变,证明了改变的是原值
不可变类型:值改变,id也变了,证明产生的是新值,压根没有改变原址,证明原值是不能被修改的
int是不可变类型
x=10
print(id(x))
x=11
print(id(x))
#id不同
float是不变类型
x=3.1
print(id(x))
x=3.2
print(id(x))
#id不同
str是不可变类型
x="abc"
print(id(x))
x="bbb"
print(id(x))
#id不同
list是可变类型
l=['aaa','bbb','ccc']
print(id(l))
l[0]='AAA'
print(id(l))
#id相同
dict是可变类型
dic={'k1':'111','k2',:'222'}
print(id(dic))
dic[ki]=333
print(id(dic))
#id相同