Python集合基础
set的使用
集合(set)是一个无序的不重复元素序列,可以使用大括号(}或者set()函数创建集合。(如果有重复的数据,会自动去除)
创建格式:
parame ={value0l,value02,....}或者set(value)
注意:空集合表示方式不是{},{}表示的是空字典, 空集合必须使用set()来实现创建一个空集合,因为{}是用来创建一个空字典
集合是一个不重复的无序,可以使用{}或者set来表示,输出一个集合多次结果可能是不一样的,因为无序性,同时也导致了获取某个元素需要使用特殊的方法
{}有两种意思:
字典、集合,{}里如果放的是键值对,它就是一个字典;
如果{}放的是单个的值,就是一个集合
person ={'name':'zhangsan','age':18} #字典
x={'hello',1,'good'} #集合
x.add('China')将元素China添加到集合s中,如果元素已存在,则不进行任何操作。
x.clear()清空一个集合
x.pop()随机删除一个元素
x.remove('指定的元素') 删除这个指定的元素,如果指定元素不存在,就会报错
x.union({'Tom','Jerry'})求并集,将多个集合合并生成一个新的集合
x.update(('Smith')) 将Smith拼接到x
A.update(B) 把B拼接到A里
集合的高级使用
first =('李白','白居易','李清照','杜甫','王昌龄','王维','孟浩然','王安石')
second =('李商隱','杜甫','李白','白居易','岑參','王昌齡')
third =('李清照','刘禹锡',岑參','王昌齡','苏轼,'王維',李白')
set 支持很多算术运算符,但是不支持 + 法
- 法 A-B相当于求A和B的差集
& A&B 求A和B的交集
| A|B 求A和B的并集
^ A^B 求A和B的差集的并集
去重排序
内置类 list tuple set
nums =[9,8,4,3,2,1]
x=tuple(nums) #使用tuple内置类转换成为元组
y=set(x) #使用set内置类转换成为集合
z= list({'name':'zhangsan','age':18,'score':98})
结果是一个只含有key 的列表
内置函数转换
Python里有一个比较强大的内置函数,可以执行字符串里的代码
eg: a='input("请输入您的用户名:")'
eval(a)
JSON的使用
**JSON** 把列表,元组,字典或者转换成为字符串
person ={'name':'zhangsan','age':18,'gender':'female'}
#字典如果想要把它传给前端页面或者把字典写入到一个文件里
#'{"name":"zhangsan","age":18,"gender":"female"}’
mg=json.dumps(person)#dumps将字典、列表、集合、元组等转换成为JSON字符串
print(m)
print(type(m)) # <class 'str'>
#print(m['name']) 不能这样使用,m是一个字符串,不能像字典一样根据key获取value
n={"name":"zhangsan","age":18,"gender":"female"}
可以使用eval() p=eval(n),print(type(p)) dic
s = json.loads(n),print(s)
#loads()可以将JSON字符串转换成为Python里的数据
Python JSON
True true
False false
字符串 字符串
字典 对象
列表,元组 数组
生命依靠吸收负熵,避免了趋向平衡的衰退