我是靠谱客的博主 酷酷柜子,最近开发中收集的这篇文章主要介绍Python基本数据结构之元组、集合与字典,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

元组(Tuple)

  1. 有序的集合
  2. 通过偏移来取数据
  3. 属于不可变的对象,不能在原地修改内容,没有排序,修改等操作。
    在处理一组对象时,这个组默认是元组类型

注:

  1. tuple类型转换,想修改先用list方法将元组转换成列表,再将修改后的列表用tuple方法生成新元组
  2. 那为什么有列表还要有元组呢
    (元组不可变的好处)保证数据的安全,比如我们传给一个不熟悉的方法或者数据接口,确保方法或者接口不会改变我们的数据从而导致程序问题。

集合(Set)

集合是没有顺序的概念。所以不能用切片和索引操作。

  1. 创建集合。set():默认是可变的 frozenset():不可变的
  2. 添加操作:add,update
  3. 删除 remove
  4. 成员关系 in,not in
  5. 交集,并集,差集 & | -
  6. set去重:利用集合的单一性清除列表内容重复的元素。

可变集合


info = set('abc')
info.add('python')##添加单个对象到集合里
print info
info.update('python')##把对象里的每个元素添加到集合里
print info
info.remove('python')
print info

不可变集合

t = frozenset('haha')
##不能进行添加,修改和删除的操作。

成员操作 in,not in


print 'a' in info
print 'h' in t
print 'jay' not in info

判断2个集合是否相等,之和元素本身有关,和顺序无关。

print set('abc') == set('cba')

并集,交集,差集


print set('abc') | set('cbdef') ##并集
print set('abc') & set('cbdef') ##交集
print set('abc') - set('cbdef') ##差集
liststr = ['haha','gag','hehe','haha']

for循环在set中的小应用:


m = []
for i in liststr:
if i not in m:
m.append(i)
print m
m = set(liststr)
print list(m)

字典dict

字典的特点

字典是无序的,它不能通过偏移来存取,只能通过键来存取
字典 = {‘key’:value}
key类似我们现实的钥匙,而value则是锁。一个钥匙开一个锁,内部没有顺序,通过键来读取内容,可嵌套,方便我们组织多种数据结构,并且可以原地修改里面的内容,属于可变类型。
组成字典的键必须是不可变的数据类型,比如,数字,字符串,元组等,列表等可变对象不能作为键.即键key必须是可哈希(hashable)的。
不允许一个键对应多个值。

创建字典。{}和dict()

  1. 定义方法:info = {'name':'lilei', 'age': 20}

  2. dict内置方法:info = dict(name='lilei',age=20)

添加内容 a[‘xx’] = ‘xx’

info['phone'] = 'iphone5'

修改内容 update() ,

update()的参数是一个字典的类型,他会覆盖相同键的值。

info['phone'] = 'htc'
info.update({'city':'beijing','phone':'nokia'})

删除 del,clear(),pop()

del info['phone']
#删除某个元素
info.clear()
#删除字典的全部元素
info.pop('name')
#注意和列表pop方法的区别

in 和 has_key() 成员关系操作

返回布尔值,比如:

phone in info
info.has_key('phone')

字典的几个重要方法

  1. keys(): 返回的是列表,里面包含了字典的所有键。
  2. values():返回的是列表,里面包含了字典的所有值。
  3. items():生成一个字典的容器:[()]
  4. get():从字典中获得一个数据

    info.get('name')
    info.get('age2',’22’)
    #第二个参数可选,设置时表示没有该键时返回的默认值。
    
  5. hash():本身并不是为字典设计的方法,可以判断某个对象是否可以做一个字典的键。将一个对象作为参数传递给hash()返回这个对象的哈希值。

最后

以上就是酷酷柜子为你收集整理的Python基本数据结构之元组、集合与字典的全部内容,希望文章能够帮你解决Python基本数据结构之元组、集合与字典所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部