# 内置数据结构-元组(Tuple)、列表(List)、字典(Dictionary)——2009-12-3
1.元组的正序、倒序、切片的三种索引使用方法:
>>> tuple = ('a','b','c','d','e') #定义一个元组tuple
>>> tuple[2] #索引2的元素(从0开始,从头开始--正序索引)
'c'
>>> tuple[-2] #索引-2的元素(元组中倒数第2的元素,从尾开始--倒序索引)
'd'
>>> tuple[1:3] #切取索引1到索引3中间的元素(切片索引--不包括后者在内)
('b','c') #记住不包括指定索引区间中最后一个索引的元素
>>> tuple[-3,-1] #使用倒序方式指定切取区间,'-'就是从尾数起的意思,不同于从头开始从0,而是1开始
('c','d') #一样是包括指定索引区间中最后一个索引的元素,也就是索引'-1'中的元素
2.元组的另一种有趣的说法--可以"打包"然后"解包":
>>> tuple = (11,22,33,44,55) #定义元组tuple,我们还可以称作我们把11,22,33,44,55这几个常量"打包"起来
>>> a, b, c, d = tuple #新概念"解包",其中a,b,c,d每个都领到了叔叔tuple给他们"封"的红包
>>> print a, b, c, d #哈哈.看看他们各自分得到的红包里的RMB数目对不?....
11 22 33 44 55 #跟叔叔tuple打包时的数目一样.呵呵
3.map()可以返回二元元组的子元组
4.列表的一些常用方法:
①:append(object)--在列表的末尾添加一个对象object
②:insert(index,object)--在索引index处插入一个对象object
③:remove(value)--删除列表中元素为value的值,如果列表中有同名元素,则删除先出现的
④:pop([index])--删除索引为index的元素,如果不值得index,Python则删除列表中最后一个元素
⑤:extend(iterable)--将iterable的元素合并到列表的尾部(还可以用'+='实现)
⑥:index(value,[start,[stop]])--返回列表中元素value的索引,如果列表中有同名元素,则返回先出现的
⑦:sort(cmp=None,Key=None,reverse=False)--列表的排序
⑧:reverse()--列表的反转(反转式排序)
⑨:string in(list)函数可以判断字符串string是否在列表list中
⑩:还可以使用'*'、'+'、'+='进行操作
5.列表中堆栈与队列的概念:
①:堆栈--先进后出,当使用append()方法在列表尾插入一个对象时,此时指针在列表的尾部,也就是堆栈的顶部,而使用pop()方法更是可以把堆栈顶部的元素弹出来
②:队列--先进先出,当使用append()方法在列表尾插入一个对象时,此时指针在列表的尾部,也就是列表的底部,而使用pop(0)-注意多了个索引0,就可以把队列中的第一个元素弹出来
6.字典的灵活运用之一,在print()中使用:
>>> print '%s, %(a)s, %(b)s' %{'a':'apple', 'b':'banana'} #其中的%s显示整个字典,而另外两个%s则指定了字典的键,显示对应的值
{'a':'apple','b':'banana'}, apple, banana
7.字典中的一些杂七杂八:
①:字典的修改--dict[key] = value 如果key未存在则自动添加,如果存在则修改
②:字典的删除--del dict[key] 删除字典中键为key的元素,clear()方法则清空整个字典,也可以用pop(key[,d])弹出键为key的元素,如果字典中没有key这个键值,返回d的内容(可以用做返回提醒信息)
③:字典的遍历--常用for循环就可以搞掂,还可以用items()方法实现:
>>> dict = {'a':'aaa','b':'bbb','c':'ccc}
>>> dict.items()
[('a','aaa'),('b','bbb',('c','ccc')] #items()把字典中的一对键-值作为一个元组返回,然后把字典中所有键值组成的元组再以列表返回
8.字典中的遍历器对象(对象要实例化后才能使用):
①:iteritems()返回key-value形式的遍历器对象
②:iterkeys()返回key形式的遍历器对象
③:itervalues()返回value形式的遍历器对象
需要此类遍历器对象的时候可以按需求选择以提高程序执行效率剩下更多系统资源!
9.字典中的一些方法:
①:keys()--以列表类型返回字典的键
②:values()--以列表类型返回字典的值
③:get(k[,d])--取得字典中k的键值,如果k不存在则返回d
④:update()--合并两个字典(类似于列表中的extend()方法哟~)
⑥:items()--返回由(key,value)元组组成的列表
⑦:setdefault(k[,d])--类似get()方法,不同于get()的是如果k不存在,会使用d作为值创建一个元素并以get()方法的形式返回d,d默认为None
⑧:copy()--复制一个字典中的所有数据--浅拷贝,会跟着引用(这里看以理解成为复制源)的变化而变化,但是deepcopy()-深拷贝(需导入copy模块)则连应数据引用也一起复制)则不会受引用的变化而变化,因为深拷贝是把所有数据和数据的引用也一起拷贝的
copy.copy(dict)--引用copy的copy方法进行拷贝,但似乎dict.copy()也有用...或许这就是python万物皆对象的神奇,也许都共享这copy方法(纯属个人YY说法) 后记:经反复实验.发现这里有点不对呀~
10.关于字典的排序处理函数sorted(需要排序的序列,key = 按什么排序)
11.Python中的全局字典--sys.moudules模块:用于对导入的模块信息进行缓存.
sys.modules.keys()--返回当前环境下加载的模块名称
sys.modules.values()--返回当前下加载的模块的引用信息
分享到:
相关推荐
Python内置数据结构是该语言的重要组成部分,它决定了Python在数据处理和算法实现上的高效率和简洁性。本文分析了Python中的内置数据结构,探讨了如何利用这些数据结构解决实际问题,并给出了相应的应用实例。 首先...
1. **Python内置数据结构**:Python提供了多种内置数据结构,如列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)。列表是最常用的数据结构,它允许存储任意类型的元素,并支持动态增删改查。例如,...
**Python内置数据结构详解** 在Python编程语言中,内置数据结构是学习和使用的基础,它们提供了高效地组织和操作数据的方式。本教程将深入讲解Python的四种主要内置数据结构:列表(List)、元组(Tuple)、集合...
**Python内置数据结构详解** Python是一种高级编程语言,以其简洁明了的语法和丰富的内置数据结构而备受青睐。本教程将深入讲解Python中的基础数据结构,包括列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)...
完整详细版Python全套教学课件 第02节 python内置数据结构课堂练习.pdf
**Python内置数据结构详解** Python是一种高级编程语言,以其简洁的语法和强大的功能深受程序员喜爱。在Python中,内置的数据结构是学习和使用的基础,它们提供了高效存储和操作数据的能力。本教程将深入讲解Python...
在Python内置数据结构部分,你将学习到: 1. **列表(List)**:列表是Python中最常用的数据结构,可以容纳不同类型的数据。你可以通过索引访问列表元素,使用`append()`方法添加元素,`pop()`方法删除指定位置的元素...
讨论了Python内置数据结构(如列表和字典)的性能特点,并分析了它们在不同情况下的表现。 ##### 2.6 列表 深入研究Python列表的工作原理,包括其内部实现机制以及常见操作的复杂度分析。 ##### 2.7 字典 同样,本...
Python是一种高级编程语言,以其简洁明了的语法和丰富的内置数据结构著称。在这个主题中,我们将深入探讨Python中的四种主要内置数据结构:列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set),以及它们...
第二章讲解了算法分析,特别是大O记法,用于衡量算法的运行时间,还讨论了Python内置数据结构的性能。 第三章深入到基本数据结构,如栈(用于括号匹配和符号转换)、队列(模拟任务调度)、双端队列(实现回文检测...
5. **Python内置数据结构**: - 除了列表,Python还有其他内置数据结构,如集合(set)用于存储唯一元素,元组(tuple)为不可变序列,字典(dictionary)提供键值对存储,堆(heapq模块)实现堆数据结构。 6. **数据结构...
在这个优质的Python基础入门教程中,你会接触到许多关键概念,包括Python的内置数据结构、控制语句、文件操作、函数、面向对象编程以及异常处理等。本段主要关注的是Python的基础数据结构——序列。 序列是Python中...
这门课程不仅仅是教授学生表(列表)、字典等Python内置数据结构的使用方法,更重要的是要传授数据结构的基本概念和分析方法。因此,即使学生已经熟悉Python中列表、字典的使用,他们仍然需要学习数据结构课程来掌握...
本文主要探讨了Python中的四个内置数据结构:集合(Set)、序列(Sequence)、映射(Mapping),以及它们的具体应用。 一、Python 数据结构 1. 集合(Set) 集合是独立于标量、序列和映射的特殊数据结构,它支持...
最后,当我们实现抽象数据类型(ADT)如链表时,需要考虑其性能与Python内置数据结构的比较。链表在内存分配和操作方面可能比Python列表更具优势,但在访问元素速度上可能较慢。因此,我们需要权衡这些因素来确定...
**一、Python内置数据结构** 1. **列表(List)**:Python中最常用的数据结构之一,它是一个有序的元素集合,可以容纳不同类型的数据,支持索引和切片操作,通过`append()`、`insert()`、`remove()`等方法进行动态...
- 使用Python内置数据结构实现复杂功能,如模拟栈和队列。 通过这些练习,学习者可以深入理解Python数据结构的特性和用途,提高编程效率,为后续的进阶学习打下坚实基础。同时,"加强"和"复习巩固"的关键词意味着...
虽然Python内置数据结构中没有直接提供链表,但理解链表的概念很重要,特别是在讨论复杂数据结构时。链表每个节点包含数据和指向下一个节点的引用,使得插入和删除操作更加灵活,但随机访问不如数组快。 8. **其他...
列表一种跟java和c中的数据很像的一种数据结构,他都是保存一系列相似,且有序元素的集合,不过不同的是列表中的元素可以不是同一种数据类型,且列表的长度是可变的 可以动态的增加可减少这一点则有点像java中的...