Python:list和tuple

list

list是一种可变的有序列表,可以随时添加或删除其中的元素,使用[ ]大括号赋值。
例如,列出班里所有同学名字,可以使用一个list表示:

    >>> students = ['Mike','Bob','Lucy']

    >>> students 

    ['Mike','Bob','Lucy']

变量students就是一个list。使用len()函数可以获得list元素的个数:

>>> len(students)
3

可以使用索引来访问list中每个位置的元素,索引是从0开始的,最后一个元素的索引是-1

>>> students[0]
'Mike'
>>> students[1]
'Bob'
>>> students[2]
'Lucy' 
>>> students[-1]
'Lucy'

由于list是一个可变的有序列表,所以,可以修改list中的元素。

把元素插入到指定位置。可在变量名后加上「.insert 和索引位置及元素内容」。例如:

>>> students.insert(1, 'Jack')
>>> students
[ 'Mike','Jack','Bob','Lucy']  # 'Jack'被插入到了索引1的位置

把元素插入到末尾。可在变量名后加上「.append和元素内容」。例如:

>>> students.append('Adam')
>>> students
['Mike','Bob','Lucy','Adam'] # 'Adam'被插入到列表的末尾位置

删除指定位置元素。可在变量名后加上「.pop(i)」。其中,i是索引位置。例如:

>>> students.pop(1)
>>> students
['Mike','Lucy'] # 'Bob被删除了'

要把某个元素替换成别的元素,可以直接赋值给对应的索引位置(不用删除它再新增它)。例如:

>>> students[1] = 'Lily'
>>> students
['Mike','Lily','Lucy'] # 索引1之前是'Bob',现在被替换成了'Lily'

list里元素的数据类型也可以不同,例如:

>>> L = ['Lucy',125,Ture]

list元素也可以是另一个list嵌套,例如:

s = ['Python','Java',['Asp',Php'],'Scheme']
>>> len(s)
4

拆开写的话:

p = ['Asp','Php']
s = ['Python','Java',p,'Scheme']

二维数组

要拿到'Php',可以写p[1]

>>> p[1]
>>> 'Php'

或者写s[2][1]

>>> s[2][1]  #这就是二维数组
>>> 'Php'

tuple元组

tuple一旦初始化就不能修改,使用()小括号来赋值。例如:

>>> students = ('Mike','Lily','Lucy','Jack')
>>> students
('Mike','Lily','Lucy','Jack')

不可变的tuple的意义是什么呢?因为tuple不可变,所以代码更安全,如果可能的话,能用tuple时尽量使用tuple。

定义一个空的tuple,可以写成():

>>> t = (1,2)
>>> t
(1,2)

定义一个只有1个元素的tuple:

>>> t = ('a',)
>>> t
('a',)

Python在定义1个元素的tuple时,要求必须加一个逗号,,输出的结果也会加上逗号。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、python 变量和数据类型 1.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序...
    绩重KF阅读 2,017评论 0 1
  • Python创建List Python创建list Python内置的一种数据类型是列表:list。list是一种...
    极客小寨阅读 567评论 0 0
  • Python最常用的两种集合类型:list和tuple,我们可以用list和tuple来表示有序集合。 1.Pyt...
    ChinaGoodStaff阅读 1,103评论 0 3
  • 最近在慕课网学习廖雪峰老师的Python进阶课程,做笔记总结一下重点。 基本变量及其类型 变量 在Python中,...
    victorsungo阅读 1,943评论 0 5
  • 近日,趁着时光,将《红楼梦》又重温了一遍,相隔十年,那时的懵懂感知竟与现在的感触完全不一样。 且先不说大观园里的儿...
    Jasmine蔷薇阅读 503评论 0 0

友情链接更多精彩内容