码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习日记:day6-----集合

时间:2017-12-24 12:54:29      阅读:387      评论:0      收藏:0      [点我收藏+]

标签:python学习   style   bar   move   面试   rom   enumerate   from   转化   

1、基础数据类型汇总补充

1,list:
在循环一个列表是,最好不能删除列表中的元素。
2,bool
空列表、int:0、空str、空dict、空set---》bool:false
其余为true
3,dict
dic = dict.fromkeys([1,2,3],‘春哥‘)
print(dic)
技术分享图片
在循环一个字典当中不能删字典内的内容
面试题:
tu1 =(1)----->int
tu2 =(1,)------->tuple
元祖里边只有一个元素,且不加‘,’该是什么类型还是什么类型。

2、集合

1,集合是一个可变数据类型,里边存的元素必须是不可变的数据类型。集合无序,元素不能重复。-------》去重:将列表转化为集合,在转化回去就可以去重。
2,形式 {}: set1 =set({1,2,3})
                print(set1)
      set2={1,2,3}
技术分享图片------》不可哈希:可变数据类型。
增、删、查

增:

1、add
 
set1 = {alex,wusir,ritian,egon,barry}
set1.add(女神)
print(set1)
#set1 = {alex,wusir,ritian,egon,barry,女神 }        

 

2,update---->与extend类似。
#update
set1 = {alex,wusir,ritian,egon,barry}
set1.update(abc)
print(set1)

1,pop

set.pop()#随机删除,有返回值

2,remove

remove#按元素去删。没有这个元素会报错

3,clear

clear#清空集合
4,del
del 删除集合。---》会报错

只能用for去查

3、集合的交集并集差集

1,交集:

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8} set3
= set1& set2 print(set)

或者

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.intersection(set2))

2,并集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
 print(set1 | set2) 

或者

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set2.union(set1))

3,反交集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1 ^ set2)
或者
set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.symmetric_difference set2)

4,差集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.difference(set2))

或者:

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1-set2)
面试题:(去重)
 
li=[1,2,33,33,2,1,4,5,6,6]    
#去除重复元素----set
s1 = set(li)
print(set1) #{1,2,33,4,5,6}
li = list(set1)
print(li)
---------------------------------------------------------------------------------------------------------------------------------------

4、将集合转化为不可变数据类型

        s =frozenset(‘barry‘)---->frozen类型
 

5,深浅拷贝

1,浅copy
li =[1,2,3]
li2 = li.copy()
copy产生了一个新的列表----》copy----》浅copy
2,深copy
技术分享图片
浅copy。赋值运算是共用一个ip地址,切片再赋值是浅copy
 
 

补充:

枚举
for i in enumerate(li):
    print(i)
 技术分享图片

 

Python学习日记:day6-----集合

标签:python学习   style   bar   move   面试   rom   enumerate   from   转化   

原文地址:http://www.cnblogs.com/kakawith/p/8086103.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!