python list(列表)和tuple(元组)
200 ? "200px" : this.width)!important;}
-->
介绍
python中存在两种有序的类型列表,分别是list(列表)和tuple(元组)。list可变、tuple不可变。
一、list[]列表
为什么说list是可变的元素列表,因为在定义完list列表之后,还可以对列表中的元素值进行修改、增加或删除元素;同时list是一个有序的集合,注意列表和数组一样索引也是从0开始。
1.定义list列表
name=['a','b',3]
2.获取list的值
>>> name[0]
'a'
>>> name[1]
'b'
>>> name[2]
3
>>> name[-1]
3
>>> name[-2]
'b'
3.获取列表的长度
>>> len(name)
3
4.修改列表元素的值
>>> name[0]=1
>>> name
[1, 'b', 3]
将列表的第一个元素的值修改为1
5.增加元素
>>> name.append('')
>>> name
[1, 'b', 3, '']
append方法默认在列表末尾增加元素
在指定位置增加元素
>>> name.insert(1,'中')
>>> name
[1, '中', 'b', 3, '']
可以使用insert在指定的位置增加元素
6.删除元素
删除末尾元素
>>> name.pop()
''
>>> name
[1, '中', 'b', 3]
删除指定元素
>>> name.pop(3)
3
>>> name
[1, '中', 'b']
6.列表中包含列表
>>> name.insert(1,['明','天'])
>>> name
[1, ['明', '天'], '中', 'b']
返回元素'天'
>>> name[1][1]
'天'
二、tuple()列表
tuple也是一种有序的列表,但是它一旦定义了就无法更改,你也可以用获取LIST元素的方法获取tuple元素,但是不能使用append、pop、insert等方法修改元组。
1.定义元组
>>> tu=('a','b','c',4)
>>> tu
('a', 'b', 'c', 4)
2.获取元素
>>> tu[0]
'a'
>>> tu[-1]
4
3.当对元素的值进行修改时失败
>>> tu[0]=''
Traceback (most recent call last):
File "<pyshell#74>", line 1, in <module>
tu[0]=''
TypeError: 'tuple' object does not support item assignment
4.定义一个空的tuple
>>> t=()
>>> t
()
5.定义一个元素的tuple
>>> t=(1,)
>>> t
(1,)
注意:1后面需要加逗号,否则会被解析成数学表达式的括号等于1,例如:
>>> x=(1)
>>> x
1
它不是元组,只能算是一个赋值操作了
6.定义"可变"的tuple
注意这里的可变的意思需要特别理解,这里的可变不是tuple的元素,而是元素内才元素
>>> tlist=('a','b',['c','d'])
>>> tlist
('a', 'b', ['c', 'd'])
修改元素“['c','d']”列表中的值、
>>> tlist[2][0]='x'
>>> tlist[2][1]='y'
>>> tlist
('a', 'b', ['x', 'y'])
>>>
对于tuple来说它只能保证它括号内的基本元素不变,但是元素内在值不在限制内,例如上面的列子tlist有三个元素分别是:'a','b','[]',而元素'[]'是一个列表,它包含值'c','d',所以元素列表'[]'的值不在tuple的限制之内了。
总结
在面向对象的语言里,所有元素的都称为对象,所以list和tuple都是对象;而list是可变对象,tuple是不可变对象(前提tuple中不能存在list)。
|
备注: 作者:pursuer.chen 博客:http://www.cnblogs.com/chenmh 本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接。 《欢迎交流讨论》 |
python list(列表)和tuple(元组)的更多相关文章
- Python list 列表和tuple元组
1 list是一种Python的数据类型--列表 list是一种有序的集合,可以进行增删改查 >>>name=[aa,bb,cc] >>>name ['aa','b ...
- list列表、tuple元组、range常用方法总结
list 列表(数组),是可迭代对象,列表是可变的所以列表的方法都是在列表本身更改的.里面看可以放各种数据类型的数据,可存储大量数据 连接列表可以使用 + 或 extend() a = [1, 3, ...
- Python数据类型list(列表)和tuple(元组)
list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...
- python 在列表中添加元组元素,按照元组第一个值进行排序
>>> import bisect >>> scores = [(, , , , 'python')] >>> bisect.insort(sco ...
- python基础2--数据结构(列表List、元组Tuple、字典Dict)
1.Print函数中文编码问题 print中的编码:# -*- coding: utf-8 -*- 注:此处的#代表的是配置信息 print中的换行符,与C语言相同,为"\n" 2 ...
- [Python]字典Dictionary、列表List、元组Tuple差异化理解
概述:Python中这三种形式的定义相近,易于混淆,应注意区分. aDict={'a':1, 'b':2, 'c':3, 'd':4, 'e':5} aList=[1,2,3,4,5] aTuple= ...
- python基础——list和tuple(列表和元组)
1.list的定义,插入insert,append,按位置索引. >>> name = ['Macal','lily','lucy','bob'] --初始化>>> ...
- Python之列表、字符串、元组和字典的基本用法
1 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单 ...
- devi into python 笔记(二)元组 变量声明 和列表解析
元组tuple: 类似list,只是tuple是不可变的list.类似java的String都是不可改变的.注意:tuple没有方法(有待考证),不可以像list那样那个list.pop 或者list ...
随机推荐
- IIS Web负载均衡的几种方式
Web负载均衡的几种实现方式 摘要:负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用 ...
- 使用Java VisualVM监控远程JVM
我们经常需要对我们的开发的软件做各种测试, 软件对系统资源的使用情况更是不可少, 目前有多个监控工具, 相比JProfiler对系统资源尤其是内存的消耗是非常庞大,JDK1.6开始自带的VisualV ...
- 【iOS-Cocos2d游戏开发之四】独自收集Cocos2d提供的字体!共57种(有对照的字体图)
本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-c ...
- I.MX6 Power off register hacking
/*********************************************************************** * I.MX6 Power off register ...
- H.264码流结构解析
from:http://wenku.baidu.com/link?url=hYQHJcAWUIS-8C7nSBbf-8lGagYGXKb5msVwQKWyXFAcPLU5gR4BKOVLrFOw4bX ...
- 最简单的视音频播放示例8:DirectSound播放PCM
本文记录DirectSound播放音频的技术.DirectSound是Windows下最常见的音频播放技术.目前大部分的音频播放应用都是通过DirectSound来播放的.本文记录一个使用Direct ...
- 【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
原文网址:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式 ...
- 关于Android Studio升级到2.0后和Gradle插件不兼容的问题
今天升级AS到2.0后,用AS在真机上调试,发现报了如下错误: This version of Android Studio is incompatible with the Gradle Plugi ...
- wap版和pc版的旋转js
<script type="text/javascript"> var evt = "onorientationchange" in window ...
- Oracle 课程六之hint
课程目标 完成本课程的学习后,您应该能够: •什么是oracle hint •Hint的使用范围 •Hint 汇总 •演示常用的hint Hint简介 Hint是oracle 提供的一种SQL语法 ...