浅析Python中元祖、列表和字典的区别

yipeiwu_com5年前Python基础

1、列表(list

  list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。

  列表中的项目应该包括在方括号中,这样Python就知道你是指明一个列表。一旦你创建了一个列表,就可以添加、删除,或者是搜索列表中的项目。由于你可以增加或者删除项目,我们说列表是可变的数据类型,即这种类型是可以被改变的,且列表是可以嵌套的。

实例:

#coding=UTF-8

#author:RXS002

animalslist = ['fox','tiger','rabbit','snake']

print('I do not like these',len(animalslist),'animals...')

 

for item in animalislist:

print(item)

 

print('\n操作后')

#对列表的操作,添加,删除,排序

animalslist.append('pig')

del animalslist[0]

animalslist.sort() #sort是排序

for i in range(0,len(animalslist)):

  print(animallist[i])

执行结果:

I do not like these 4 animals...

fox tiger rabbit snake

操作后

pig rabbit snake tiger

2、元祖(tuple)

  元祖和列表十分相似,不过元祖是不可变的。即你不能修改元祖。

  元祖通过圆括号中用逗号分隔的项目定义。元祖通常在使语句或者用户定义的函数能够安全的采用一组值得时候,即被使用的元祖的值不会改变。元祖可以嵌套。

>>>zoo = ('wolf','elephant','penguin')

>>>zoo.count('penguin')

1

>>>zoo.index('penguin')

2

>>>zoo.append('pig')

执行错误:因为元祖不可修改

 3、字典(Dictionary)

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

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

实例:

#coding = UTF-8 

#author:rxs002

dict1 = {'zhang':'张家辉','wang':'王宝强','li':'李冰冰','zhao':'赵薇'}

#字典的操作,添加,删除,打印

dict1['huang'] = '黄家驹'

del dict1['zhao']

for firstname,name in dict1.item():

  print firstname,name  

执行结果:

li   李冰冰

wang 王宝强

huang 黄家驹

zhang 张家辉

总结

以上就是关于Python中元祖、列表和字典的介绍与区别,希望对大家学习使用Python能有所帮助。

相关文章

Python实现密码薄文件读写操作

制作一个"密码薄",其可以存储一个网址,和一个密码(如 123456),请编写程序完成这个“密码薄”的增删改查功能,并且实现文件存储功能 D:\pytest_day\mimab...

关于Python面向对象编程的知识点总结

前言 如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程...

python 写入csv乱码问题解决方法

需求背景 最近为公司开发了一套邮件日报程序,邮件一般就是表格,图片,然后就是附件。附件一般都是默认写到txt文件里,但是PM希望邮件里的附件能直接用Excel这种软件打开,最开始想保存...

Python中断言Assertion的一些改进方案

Python Assert 为何不尽如人意? Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常。 >>>...

解决Python selenium get页面很慢时的问题

解决Python selenium get页面很慢时的问题

driver.get("url")等到页面全部加载渲染完成后才会执行后续的脚本。 在执行脚本时,driver.get("url") ,如果当前的url页面内容较多加载特别慢,很费时间,但...