`

Python入门 List和Tuple类型

阅读更多

List

Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。 

append()总是把新的元素添加到 list 的尾部。

L.insert(0, 'Paul') 的意思是,'Paul'将被添加到索引为 0 的位置上(也就是第一个),而原来索引为 0 的Adam同学,以及后面的所有同学,都自动向后移动一位。

pop()方法总是删掉list的最后一个元素,并且它还返回这个元素.如果要删除指定位置的元素。则用:pop(index)

对list中的某一个索引赋值,就可以直接用新的元素替换掉原来的元素,list包含的元素个数保持不变。

List 的最后一个元素可用list[-1]获取或赋值。同样的,倒数第二个,倒数第三个可分别用下标-2,-3.

 

Tuple

tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了

创建tuple和创建list唯一不同之处是用( )替代了[ ]

>>> t = ('Adam', 'Lisa', 'Bart')

创建包含1个元素的 tuple 呢?来试试:

>>> t = (1)
>>> print t
1

好像哪里不对!t 不是 tuple ,而是整数1。为什么呢?

因为()既可以表示tuple,又可以作为括号表示运算时的优先级,结果 (1) 被Python解释器计算出结果 1,导致我们得到的不是tuple,而是整数 1。

正是因为用()定义单元素的tuple有歧义,所以 Python 规定,单元素 tuple 要多加一个逗号“,”,这样就避免了歧义:

>>> t = (1,)
>>> print t
(1,)

Python在打印单元素tuple时,也自动添加了一个“,”,为了更明确地告诉你这是一个tuple。

 

“可变”的tuple

前面我们看到了tuple一旦创建就不能修改。现在,我们来看一个“可变”的tuple:

>>> t = ('a', 'b', ['A', 'B'])

注意到 t 有 3 个元素:'a','b'和一个list:['A', 'B']。list作为一个整体是tuple的第3个元素。list对象可以通过 t[2] 拿到:

>>> L = t[2]

然后,我们把list的两个元素改一改:

>>> L[0] = 'X'
>>> L[1] = 'Y'

再看看tuple的内容:

>>> print t
('a', 'b', ['X', 'Y'])

不是说tuple一旦定义后就不可变了吗?怎么现在又变了?

别急,我们先看看定义的时候tuple包含的3个元素:

当我们把list的元素'A'和'B'修改为'X'和'Y'后,tuple变为:

表面上看,tuple的元素确实变了,但其实变的不是 tuple 的元素,而是list的元素。

tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

  如果要想使t = ('a', 'b', ['A', 'B']),变成不可变的,可以改成:t=('a','b',('A','B'))

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    小学生python入门-极度舒适的全套Python入门教程,小学生看了也能学会.pdf

    【Python入门基础知识】 Python是一种广泛使用的编程语言,尤其适合初学者和小学生学习。它以其简洁易懂的语法和丰富的库支持而备受青睐。在“小学生python入门-极度舒适的全套Python入门教程”中,主要介绍了以下...

    Python 入门

    在学习Python入门的过程中,我们会遇到一系列的概念和步骤。从Python的安装到模块导入原理,再到变量和数据类型的理解,这些知识点构成了Python编程的基础。接下来,我将详细解释这些内容。 首先,安装Python是学习...

    Python入门学习手册 .pdf

    4. 数据结构:详细介绍Python内置的基本数据结构,如列表(list)、元组(tuple)、字典(dict)和集合(set),以及如何操作和利用这些数据结构。 5. 控制流:解释如何使用条件语句(if-elif-else)和循环语句...

    Python入门教程-超详细1小时学会Python.rar_Python 入门_Python入门_python_python

    Python还支持多种数据结构,如列表(list)、元组(tuple)、集合(set)和字典(dict)。列表是可变的,元组则是不可变的,而字典则通过键值对存储数据,提供了快速的查找功能。 控制流是任何编程语言的核心,Python中的if...

    编程小白的第一本Python入门书

    《编程小白的第一本Python入门书》是一本专为编程初学者量身打造的教材,尤其适合那些完全没有编程背景的读者。本书旨在引领初学者跨入编程世界的大门,特别是学习Python这种近年来非常热门的编程语言。下面将对...

    python3.8入门教程完整版-Python3.8从入门到精通(视频教学版).pdf

    2.6 结构数据类型:如集合(Sets)、列表(List)、元组(Tuple)和字典(Dictionary),每种都有特定的创建、访问和操作方法。 2.7 运算符和优先级:包括算术、比较、赋值、逻辑、位、成员和身份运算符,以及它们...

    Python入门100例

    此外,Python还有列表(list)、元组(tuple)、集合(set)和字典(dict)等复合数据类型,它们允许你存储和操作多个值。 2. **变量与赋值**: 在Python中,你可以轻松创建变量并为其分配值。变量名遵循一定的命名...

    python入门三之高级类型1

    在Python入门学习中,掌握高级数据类型是至关重要的一步。本篇主要关注List、Tuple、Dict和Set这四种基本的数据结构。 首先,我们来看List。List是Python中最常用的一种有序集合,它允许存储任意类型的对象,并且...

    Python入门教程.pdf

    【Python入门知识详解】 Python是一种高级编程语言,以其简洁易读的语法和强大的功能而闻名。对于初学者和想要转行进入软件测试行业的人员来说,Python是一个理想的起点。本教程将引导你逐步了解Python的基础知识。...

    夜曲编程Python入门课程Pro知识点思维导图

    2. **D8数据和判断小结**:数据是程序处理的核心,Python支持多种数据类型,如整型(int)、浮点型(float)、布尔型(bool)、字符串(str)、列表(list)、元组(tuple)、字典(dict)等。同时,判断语句(if-else)是控制程序...

    Python入门指南 2.5b-完整书签高清文字版.pdf

    此外,还有列表(list)、元组(tuple)、字典(dict)和集合(set)等复合数据结构。 2. **控制流**:掌握条件语句(if-else)、循环(for、while)以及异常处理(try-except-finally)是编程基础。 3. **函数**...

    Python3入门视频教程百度网盘.pdf

    此外,还会介绍列表(list)、元组(tuple)、集合(set)和字典(dict),这些都是Python中表示“组”的主要结构。 第四章深入探讨列表和元组,它们在Python中用于存储和操作有序数据。你将学习如何创建、修改和访问这些...

    序列数据类型(List, Tuple, Dictionary, Set)【Python一周入门教程3】

    序列数据类型(List,_Tuple,_Dictionary,_Set)【Python一周入门教程3】

    python入门书籍

    1. 基础语法:Python入门书籍会从Python的基本语法讲起,包括变量的定义、数据类型、运算符、控制结构(if语句、for循环和while循环)等。这些都是编程中最基础的元素。 2. 函数与模块:学习如何定义和使用函数来...

    Python入门案例代码

    在Python编程语言的世界里,"Python入门案例代码"是一份非常适合初学者的资源,它包含了大量帮助理解基础概念和语法的实例。这份压缩包可能是博主为了教学目的精心编排的一系列教程,旨在引导新手逐步掌握Python的...

    python入门视频和源码-输入和数据类型

    在本套"python入门视频和源码-输入和数据类型"教程中,我们将深入学习Python编程的基础知识,包括如何获取用户输入以及理解Python中的不同数据类型。这些是编写任何Python程序的基本技能,无论你是初学者还是希望...

    Python Tutorial Python入门指南

    例如,Python 2.x 中的字符串有两种类型:`str`(字节串)和 `unicode`(Unicode字符串),而在Python 3.x中,所有字符串都是Unicode。此外,Python 2.5的`print`还是语句,而在Python 3.x中已转换为函数。 总之,...

    Python入门经典

    此外,Python还有列表(list)、元组(tuple)、集合(set)和字典(dictionary)等复合数据结构,这些是Python的强大之处。 2. **控制流**:书中会讲解如何使用条件语句(if-else)进行条件判断,以及循环语句...

    python入门速查表

    【Python入门速查表】是为初学者设计的一份实用指南,旨在帮助快速掌握Python编程基础知识。这份速查表通常包含各种语法结构、内置函数、常用模块和编程技巧的概览,是学习和工作中便捷的参考资料。以下是根据速查表...

    Python入门及配套资源

    此外,Python还有列表(list)、元组(tuple)、集合(set)和字典(dict)等复合数据类型,它们提供了灵活的数据组织方式。 2. **控制结构**:Python的控制结构包括条件语句(if-else)用于条件判断,循环结构...

Global site tag (gtag.js) - Google Analytics