python的集合容器

2017-07-14  本文已影响0人  MambaMentality

内容:1.列表  2. 元组  3.列表与元组之间的转换  4. 字典  5.set

1. 列表

1.1列表-查

1.值 = 列表[index]            根据下标查找值

2. index = 列表.index(值)                 从列表中找出某个值第一个匹配项的索引位置

3. count = 列表.count(值)                统计某个元素在列表中出现的次数

4. lenth = len(列表)                     查询列表的长度,元素的个数

5. max(列表) ,min(列表)                  查询列表中的最大值,最小值

1.2 列表-增

1. 列表.append(值)              新增到末尾

2. 列表.insert(下标,值)              插入到指定位置

3. 列表.extend(列表)          列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

1.3 列表-改

列表[下标]=值

1.4 列表=删

1. 列表.pop()                删除末尾元素,并返回此元素

2. 列表.pop(下标)          根据元素下标删除,并返回次元素

3. del  列表[下标]            根据元素下标删除

4.列表.remove(值)            根据元素的值删除

1.5 列表判断

1. in(存在)           如果存在那么结果为True,否则为False

2. not in(不存在)          如果不存在那么结果为True,否则False

1.6 列表-排序

1. 列表.reverse()           向列表中元素

2. 列表.sort()            对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数

1.7 列表-切片(用处很大)

1. 列表[num1:num2:num3]

     num1,num2都是列表的下标

     num3是间隔

     返回一个新的列表


2. 元组

        Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。

      元组的功能 = 列表不修改的功能


3. 列表与元组相互转换

列表 = list(元组)           元组转列表

元组 = tuple(列表)            列表转元组

注意:

这两个方法都是得到一个新的,不会修改原来的


4.字典

4.1 增/改

字典[键] = 值

如果次key不存在,就是往字典里新增一个键值对;否则,就是修改

由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉。

4.2 删

1. 字典.pop(键)                 根据键,删除指定的值,并将此值放回

2. del 字典[键]                 根据键,删除指定的值

3. 字典.clear()                 清空字典里的键值对

4.3 查

1. 值 = 字典[键]                 根据键查询值

2. 字典.get(键,[默认值])                                                                                                                   通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value

3. len(字典)             计算字典元素个数,即键的总数。

4. str(字典)              输出字典可打印的字符串表示。

5. dict.keys()             以列表返回一个字典所有的键

6. dict.values()             以列表返回一个字典所有的值

7. dict.items()                 以列表返回可遍历的(键, 值) 元组数组

4.4 判断

  键 in 字       如果键在字典中存在,返回True              否则,返回False

4.5 遍历

使用for循环遍历的三种方式:

for key in dict:

           print('%s:%s'%(key,dict[key]))

for key in dict.keys():

                print('%s:%s'%(key,dict[key]))

for k,v in dict.items():

                  print('%s:%s'%(k,v))

4.6 其他

1. dict.copy()                   返回一个新的字典,内容一样,地址不同

2. dict.fromkeys(seq[, val]))

创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值

3. dict.setdefault(key, default=None)

和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default       如果键在字典中,返回这个键所对应的值。如果键不在字典中,向字典中插入这个键,并且以default为这个键的值,并返回 default。default的默认值为None

4. dict.update(dict2)                  把字典dict2的键/值对更新到dict里

5. set

set是一个无序,不能重复的集合容器,所以可以用来过滤重复元素

1. add(obj) 新增

2. remove(obj) 移除

3. | 并集

4. & 交集

4. - 差集

5.1 扩展用法

1. set.update(x)

将集合 x 并入原集合s中,x 还可以是列表,元组,字典等,x 可以有多个,用逗号分开

2. set.discard( x )                 将 x 从集合s中移除

3. pop()                     随机删除并返回集合s中某个值

4. clear()                  清空

5. x in s                 set同样支持in操作

6. union( x ) /&                返回s与集合x的交集,不改变原集合s,x 也可以是列表,元组,字典

7. intersection( x )                 返回s与集合x的并集,不改变s, x 也可以是列表,元组,字典

8. difference( x )                  返回在集合s中而不在集合 x 中的元素的集合,不改变集合s, x 也可以是列表,元组,字典。

9. symmetric_difference( x )                    返回s和集合x的对称差集,即只在其中一个集合中出现的元素,不改变集合s, x 也可以是列表,元组,字典。

10. issubsetssss)                判断 集合s 是否是 集合x 子集

11. issuperset( x )               判断 集合x 是否是集合s的子集

上一篇下一篇

猜你喜欢

热点阅读