`

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的List和Tuple类型

    python入门基础语法,python的List和Tuple类型知识点及代码举例

    Python语法:list和tuple

    BAT算法工程师深入详细地讲解list和tuple,带你轻松入门机器学习!

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

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

    python入门的基本教程.doc

    数据类型:Python中有多种数据类型,包括整数(int)、浮点数(float)、字符串(str)、列表(list)、元组(tuple)、字典(dict)和集合(set)等。你需要了解这些数据类型的基本特性以及它们之间的转换。 变量...

    Python基础入门教程.zip

    变量和类型 常见字符串处理 条件判断 循环控制 函数 第三课 容器以及容器的访问使用 容器 list/tuple dict set 切片 列表推导 生成器 迭代器 第4课 面向对象基础 第5课 文件访问与函数式编程入门 第6课 高级面向...

    PYTHON从入门到精通.doc

    使用list和tuple 条件判断和循环 使用dict和set 函数 调用函数 定义函数 函数的参数 递归函数 高级特性 切片 迭代 列表生成式 生成器 函数式编程 高阶函数 匿名函数 装饰器 偏函数 模块 使用模块 安装第三方模块 ...

    Python语言入门经典必背一百个程序

    序列类型list, tuple, range ;文本序列类型str ;二进制序列类型bytes, bytearray ;集合类型set, ;映射类型dict ;程序结构:顺序、选择、循环 ;字符串操作函数 ;数学函数 ;关于复数的数学函数 ;十进制定点和浮点运算 ...

    Python教程大全入门到实战

    List 和 Tuple List(列表) tuple(元组) Dict 和 Set 字典(Dictionary) set 条件语句和循环语句 条件语句 循环语句 条件语句和循环语句综合实例 函数 Python 自定义函数的基本步骤 函数返回值 函数的参数 函数...

    Python3完全零基础入门精讲超清教程.txt

    课程目录:01-计算机基础常识.mp402-Python语言概览、安装与运行.mp403-Python 变量、数据类型及存储.mp404-Python 常用数据类型概览.mp405-数值与字符串.mp406-列表list.mp407-字典表dict 与元组 tuple.mp408-文件...

    深度神经网络系列视频-Python程序入门.zip

    3.2_Part2列表List元组tuple对比.mp4 3.2元组Tuple.mp4 3.3词典Dictionary.mp4 3.4函数function1.mp4 3.4函数Function2.mp4 4.1控制流1IfFor.mp4 4.2控制流2WhileRangePart1.mp4 4.2控制流2WhileRangePart2.mp4 4.3...

    2019千峰Python超详细入门教程(百度云盘分享).docx

    ├─千锋Python教程:第01章 第一个Python程序与数据存储及数据类型(9集) │ │ .DS_Store │ │ │ ├─code │ │ 1、数据存储.txt │ │ 2、第一个python程序.py │ │ 3、注释.py │ │ 4、输出与输入.py │ ...

    Python零基础速成班-第3讲-Python基础(中),list数组、tuple元组、dict字典、set集合.ipynb

    Python零基础速成班,适用于入门或初级学习人群,采用Jupyter Notebook原装教程,.ipynb格式拷贝到Jupyter Notebook目录下即可运行,网页交互式可视化Python编程,全中文注解,下载即用,对初学者非常友好,也可作为...

    python基础教程之基本内置数据类型介绍-电脑资料.docx

    电脑资料 Python基本内置数据类型有哪些 一些基本数据类型,比如:整型(数字)、字符串、元组、列表、字典和布尔类型, 随着学习进度的加深,大家还会接触到更多更有趣的数据类型,python初学者入门时先了解这几种...

    Python新手快速入门教程 Python基础入门教程 Python程序设计快速入门教学 共21页.pdf

    【目录】 一、计算机编程主要概念 ...列表(list) 元组(tuple) 字典(dict) 集合(set) 模块(module) 类(class) 定义类 具体化类,建立对象 字符串的对象性质 三、Python 程序员编程习惯 四、参考资料

    Python3完全零基础入门精讲 全套视频教程 下载地址.txt

    03-Python 变量、数据类型及存储.mp4 04-Python 常用数据类型概览.mp4 05-数值与字符串.mp4 06-列表list.mp4 07-字典表dict 与元组 tuple.mp4 08-文件与类型汇总.mp4 09-语句、表达式与if分支.mp4 10-循环语句.mp4 ...

    python运维视频.zip

    day01 python最基本的编程入门 01 今日内容大纲 02 注释.py 03 变量.py 04 常量.py 05 int类型.py 06 bool值.py 07 float类型.py 08 字符串简单操作.py 09 列表.py 10 字典.py 11 集合.py 12 元祖.py 13 用户交互.py...

    Python入门100个实例(43)——按多个字段排序

    对于列表排序方法sort(),《Python入门100个实例(26)——列表排序》一文有具体讲解。 实例程序 题目描述 求单词长度 输入n个单词,计算每个单词长度。对单词长度排序,分行输出单词长度及其单词。 输入格式: 行1:...

    Python入门_浅谈数据结构的4种基本类型

    这里主要介绍Python的4种基本数据结构:列表、字典、元组、集合。 格式如下: 列表:list = [val1,val2,val3,val4],用中括号; 字典:dict = {key1:val1,key2:val2},大括号,且每个元素是带有冒号的key与val的对应...

    python基础知识点PDF

    python入门,基础知识汇总,包含:01python基础、02运算符和编码、03基础数据类型、04基础数据类型(list、tuple)、05基础数据类型(dict)、06编码、07set以及深浅拷贝、08文件操作、09初始函数、10函数进阶、11...

Global site tag (gtag.js) - Google Analytics