python的列表,字典,元组,集合的区别和各自使用方法

    xiaoxiao2022-07-14  118

    list,tuple,set,dict区别总结图:

    列表元组集合字典英文listtuplesetdict可否读写读写只读读写读写可否重复是是否是存储方式值值键(不能重复)键值对(键不能重复)是否有序有序有序无序无序初始化[1,‘a’](‘a’,1)set([1,‘a’]) 或{1,2}{‘a’:1,‘b’:2}添加append只读addd[‘key’] = ‘value’读元素res[2:]t[0]无d[‘a’]

    1.列表list []

    列表是处理一组有序的数据结构,可以读写,添加和删除,或者搜索列表里的元素。因为可以添加和删除,所以称为可变的数据类型,即这种类型是可以被改变的,并且列表可以嵌套。

    res = [1,2,'yihang'] #增加元素:extend和append res.append(1) res.extend('6') #删除元素:del,pop,切片,remove del res[1] res.pop(1)#删除该位置上的元素,没有指定则是最后一个元素 res = res[:2]+res[3:]#切片 res.remove(2)#删除指定值的元素 #更改元素 res[1] = 100 # #查元素 print(res[0]) print(res[1])

    注意:如果想添加的一个元素是一个列表,那么append是将这个这个列表作为一个元素添加进来,而extend是将列中的元素一个一个添加进去

    2.元组tuple()

    元组跟列表非常相似,用()来表示,但是元组是不可变的,不能修改元组。元组可以嵌套。

    >>> zoo=('wolf','elephant','penguin') >>> zoo.count('penguin') 1 >>> zoo.index('penguin') 2 >>> zoo.append('pig') Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'tuple' object has no attribute 'append' >>> del zoo[0] Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object doesn't support item deletion

    3.字典dict

    字典是通过键值对的方式就数据存储下来,键必须是唯一的 键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。注意它们的键/值对用冒号分割,而各个对用逗号分割,所有这些都包括在花括号中。另外,记住字典中的键/值对是没有顺序的。如果你想要一个特定的顺 序,那么你应该在使用前自己对它们排序

    dict1={'zhang':'张家辉','wang':'王宝强','li':'李冰冰','zhao':'赵薇'} #字典的操作,添加,删除,打印 dict1['huang']='黄家驹' del dict1['zhao'] for firstname,name in dict1.items(): print firstname,name

    结果: li 李冰冰 wang 王宝强 huang 黄家驹 zhang 张家辉

    定义dict.fromkeys(range(30),value) 可以形成一个双列的列表相当于java中的map,这个键值对列表存储子dict中 取键可以通过循环 for eachkey in dict.keys(): 把所有的键赋值到eachkey中去 取值可以通过循环 for eachkey in dict.values(): 把所有的值赋值到eachkey中去 取键值对站线程元组的形式 for eachItem in dict.item(): 把所有的键值对转化成元组的方式赋值给eachItem中

    4.集合(set)

    特性:与字典类似,但只包含键,而没有对应的值,包含的数据不重复。创建:s = set(list or tuple or string)。重复的值在集合中只存在一个。如:     列表list:s = set([1,2,3,3]) ->s = set([1,2,3])     元组tuple:s = set((1,2,3)) ->s = set([1,2,3])     字符串string:s = set(“abc”) ->s = set([“a”,“b”,“c”]) 一行数据 Python 数据分析 爬虫与机器学习 python超级爱好者,公众号「一行数据」关注领取5T编程资料,有任何学习问题都可以联系我,微信data_ecology,从入门到就业
    最新回复(0)