Python中元组,列表,字典的区别

来源:互联网 发布:刷推广注册软件 编辑:程序博客网 时间:2024/06/05 14:46

Python中,有3种内建的数据结构:列表、元组和字典。

1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。列表中的项目。列表中的项目应该包括在方括号中,这样python就知道你是在指明一个列表。一旦你创建了一个列表,你就可以添加,删除,或者是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是可变的数据类型,即这种类型是可以被改变的,并且列表是可以嵌套的。 实例:

#coding=utf-8animalslist=['fox','tiger','rabbit','snake']print "I don't like these",len(animalslist),'animals...'for items in animalslist:print items,print "\n操作后"   #对列表的操作,添加,删除,排序animalslist.append('pig')del animalslist[0]animalslist.sort()for i in range(0,len(animalslist)):    print animalslist[i],结果:I don't like these 4 animals...fox tiger rabbit snake操作后pig rabbit snake tiger

2.元组
元祖和列表十分相似,不过元组是不可变的。即你不能修改元组。元组通过圆括号中用逗号分隔的项目定义。元组通常用在使语句或用户定义的函数能够安全的采用一组值的时候,即被使用的元组的值不会改变。元组可以嵌套。

>>> 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 字典

  • 字典类似于你通过联系人名称查找地址和联系人详细情况的地址簿,即,我们把键(名字)和值(详细情况)联系在一起。注意,键必须是唯一的,就像如果有两个人恰巧同名的话,你无法找到正确的信息。

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

    实例:

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