python中的列表和元组_python中列表和元组的区别
如果有了解过python中的列表和元组,你可能会知道相对于列表,元组是不可变的,也就是说元组中的数据不能随意更改。除了列表是用中括号表示而元组是用小括号表示之外,这两种数据类型好像并没有什么不同,都是用来存放一系列的数据,事实真是如此吗?
a = [1, 3, 5, 7, 'a']
b = (1, 3, 5, 7, 'b')
# 现在改变b中的值
b[2] = 4
TypeError Traceback (most recent call last)
in ()
4
5 # 现在改变b中数据的值
----> 6 b[2] = 4
TypeError: 'tuple' object does not support item assignment
看起来除了元组不可变之外,列表完全可以取代元组,为什么要多此一举创造出元组这种类型?其实这背后有更深层的含义,列表是用来表示一组相同类型(相同价值)的数据,而元组用来存放不同类型(不同价值)的数据,简单来说,列表是同质的,而元组是异构的。
比如说,现在有一本书,书里面有一些批注。我们用元组来表示书中第几页第几行的内容,像这样:position = (page, line),然后把它放到字典里作为批注的键,表示第几页第几行有批注。同时,我们用列表来表示这些位置,如果有新的位置,可以加入列表。这符合列表可以更改数据的特点。但是如果更改元组里面的数据就没有意义了,因为这些坐标本来就是存在的。
在python的模块中,我们可以找到很多例子:
range(10)
range(0, 10)
比如range方法用来生成一列有序地数据,这些数据是等价的,并没有不同的功能,所以用列表来表示最合适。而像下面的例子:
from datetime import datetime
datetime.now()
datetime.datetime(2017, 12, 17, 20, 23, 13, 578752)
当前时间适合用元组来表式,因为元组中每个数据有不同的功能,或者说有不同的价值,像第一个数据表示年份。
说到这,想起了我们之前说过的具名元组nametuple,它用来快速的生成一个类,可以看成是类的轻量级替代方法,也很符合我们上面说的元组的功能。
本文标题: python中列表和元组的区别
本文地址: http://www.cppcns.com/jiaoben/python/214865.html
python中的列表和元组_python中列表和元组的区别相关推荐
- Python基础_第3章_Python中的循环结构
Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...
- Python基础_第5章_Python中的数据序列
Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...
- python二维元组_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
如何去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...
- python列表方法语句_Python中列表和元组的相关语句和方法讲解
列表(list): 首先,列表属于序列,那么序列类型可用如下内建函数-- list(iter):把可迭代对象转换为列表. str(obj):把obj对象转换为字符串,即用字符串来表示这个对象. tup ...
- python第2位的值_Python组通过匹配元组列表中的第二个元组值
在本教程中,我们将编写一个程序,该程序将列表中具有与第二个元素相同的元素的所有元组分组.让我们看一个例子来清楚地理解它. 输入值[('Python', 'nhooos'), ('Management' ...
- python的内建数据结构包括_Python中3种内建数据结构:列表、元组和字典
Python中有3种内建的数据结构:列表.元组和字典.参考简明Python教程 1. 列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目.假想你有一个购物列表,上面 ...
- python中字典列表元组_Python中的列表和元组
python中字典列表元组 Lists and tuples are arguably Python's most versatile, useful data types. You will fin ...
- python只能对列表进行切片_Python中的列表
1. 列表的创建 列表(list)是Python中一个非常重要的类型,用于管理一组数据,列表的形式如下所示 country = ['China', 'Germany', 'Russia', 'Amer ...
- python查找列表重复项_python – 在列表中查找项目和重复项
我正在使用 Python并考虑以下问题:给出一个列表,例如[1,0,-2,0,0,4,5,0,3]多次包含0的整数,我希望有这些0和每一个的索引是它出现在列表中的次数,直到出现不同的元素或列表结束. ...
最新文章
- sap abap中动态指定查询条件
- director.js实现前端路由
- Hibernate的Session会话中get()和load()方法的区别
- html刮刮卡开始刮奖页面,html5刮刮卡抽奖 示例源码
- 平台用户实名认证设计流程
- python itertools模块_Python标准库:itertools模块
- Codevs 1205 单词反转(Vector以及如何输出string)
- python交互式shell之jupyter notebook初步安装使用
- java实现url转码、解码
- 第十二届蓝桥杯模拟赛Python组(第一期)
- 2021年下半年系统集成项目管理工程师下午真题及答案解析
- 补码一位乘法(Booth算法)和补码二位乘法详解
- Mac上使用IE浏览器
- signal信号的基础知识
- 2020国家网络安全宣传周,这些事和你有关
- golang中os/signal包的使用
- process has died
- java怎么处理黑白bmp_Android JNI处理图片实现黑白滤镜的方法
- Qt 串口数据采集并绘图
- 南京2级计算机成绩查询,南京审计大学教务管理系统登录入口、成绩查询网上选课查分...