python-list、tuple

前言:本文简单的总结了一下列表(list)和元组(tuple)的用法 


目录

列表——定义  

列表——存储相同类型的数据

 举个例子——存放相同类型数据

列表中——存储不同类型的数据 

 举个例子——存放不同类型数据

列表——元素的访问

列表——索引 index

 想要单独获取列表的某个元素时,可以使用下标索引

 列表不仅可以正着访问还可以倒着访问

列表——切片

切片——普通访问 list [a:b]

切片——跨步长访问 list [a:b:c]

切片——倒切 list[-a:-b:-c]

切片——超范围切

列表——常用函数

列表——添加元素

添加元素——末尾添加 append( element)

添加元素——指定位置添加  insert(index,element)

添加元素——批量添加数据 extend([element1,element2...])

 列表——删除元素

删除元素——默认删除最后一个 pop()

​删除元素——删除指定位置元素 pop(index)

删除元素——删除指定元素 remove(element)

删除元素——删除范围内元素 del list[a:b]

删除元素——一次清空clear()

 列表——其他函数

其他函数——统计元素个数 list.count(element)

其他函数——反转列表 list.reverse()

其他函数——列表排序 

列表排序——持久排序 list.sort()​

列表排序——临时排序 list2=sorted(list) 

列表排序——反向排序 sorted(list,reverse=True) ​

其他函数——列表复制  list2=list.copy()

元组

元组——定义

元组——索引

元组——强行修改

元组——拆包

拆包——变量数和元组内元素数相同

 拆包——变量数和元组内元素数不同


列表如同一个菜篮子,可以放菜,可以放钱,即列表里面可以放字符串,也可以放数值类型数据,除此之外,列表里面可以几乎放python的任何对象

列表——定义  

li=[ ]

列表里既可以存放相同类型的数据也可以存放不同的数据,常用来打包数据

列表——存储相同类型的数据

 举个例子——存放相同类型数据

定义一个name列表,里面存储了几个人的名字

python-list、tuple_第1张图片

列表中——存储不同类型的数据 

 举个例子——存放不同类型数据

定义一个人,他有姓名、年龄、性别、身高等属性

python-list、tuple_第2张图片

列表——元素的访问

列表——索引 index

列表中每个元素在列表中的位置称为索引(index),可以通过索引值来取对应位置上的值

举个例子——定义一个篮子,输出西瓜、白菜、南瓜在该列表里的下标

        借用列表自带函数: listname.index()python-list、tuple_第3张图片

 想要单独获取列表的某个元素时,可以使用下标索引

举个例子——定义一个篮子,并输出下标为0 2 3的元素

在这里为了直观的看到结果,我在水果名的后面加上了它的下标

python-list、tuple_第4张图片

 列表不仅可以正着访问还可以倒着访问

举个例子——定义一个篮子,并输出下标为-1 -2 -3的元素

python-list、tuple_第5张图片

 观察发现:-1访问的是倒数第一个元素,-2访问的是倒数第二个元素,-3访问的是倒数第三个元素

注意:访问列表时,无论是正着访问,还是倒着访问都不可以越界

举个例子-访问之正越界

python-list、tuple_第6张图片

 举个例子-访问之负越界

python-list、tuple_第7张图片

列表——切片

列表还可以根据一个范围来取值,这称为切片

切片——普通访问 list [a:b]

切片访问,左闭右开,访问左边的元素不访问右边的元素。

如上图所示,访问list_basket [0:2],访问的是下标为0 和1 的元素

 切片——跨步长访问 list [a:b:c]

python-list、tuple_第8张图片

 切片访问,左闭右开,带有步长就是,每隔c个访问一次,也就是下标依次增加c

如上图所示,访问list_basket [0:5:2],访问过程:从0到5,每隔2访问一次,访问的是0 2 4位置的元素

切片——倒切 list[-a:-b:-c]

切片可以从后往前切 正常的步长是往右的,倒着切的话要把步长改成负的(向左的)

 切片——超范围切

切片可以超范围,超过边界之后,就访问到了列表的尽头,不报错

python-list、tuple_第9张图片

 如图所示,访问切list_basket 下标从0到100的元素,100大于list_basket的最大下标5,这里就当取到了5,也就是切片的右端b=min(b,list.length)(切片的右端点,等于切片右端点和列表最大下标的最小值)。

延伸——正无穷、负无穷访问

python-list、tuple_第10张图片

 list[0: ]:从0开始,访问到正无穷

list[ :3]:从负无穷开始,访问到2

list[ : ]:从负无穷开始,访问到正无穷

列表——常用函数

列表——添加元素

添加元素——末尾添加 append( element)

python-list、tuple_第11张图片

 添加元素——指定位置添加  insert(index,element)

python-list、tuple_第12张图片

 添加元素——批量添加数据 extend([element1,element2...])

python-list、tuple_第13张图片

 列表——删除元素

删除元素——默认删除最后一个 pop()

python-list、tuple_第14张图片删除元素——删除指定位置元素 pop(index)

python-list、tuple_第15张图片

 删除元素——删除指定元素 remove(element)

python-list、tuple_第16张图片

  删除元素——删除范围内元素 del list[a:b]

python-list、tuple_第17张图片如图删除list_basket[0:3],左闭右开,删除的是0 1 2位置的元素

 删除元素——一次清空clear()

python-list、tuple_第18张图片

 列表——其他函数

其他函数——统计元素个数 list.count(element)

 其他函数——反转列表 list.reverse()

python-list、tuple_第19张图片

  其他函数——列表排序 

列表排序——持久排序 list.sort()

python-list、tuple_第20张图片

列表排序——临时排序 list2=sorted(list) 

 临时排序的排序结果需要其他变量来接收

python-list、tuple_第21张图片

 列表排序——反向排序 sorted(list,reverse=True) 

python-list、tuple_第22张图片

   其他函数——列表复制  list2=list.copy()

 python-list、tuple_第23张图片


元组

元组——定义

元组:类似列表,也可以索引取值,但是元素不能更改,一旦确定就无法改变

一句话就是:元组是不能修改的列表

元组定义: tu=()

python-list、tuple_第24张图片

 元组——索引

元组索引:依靠下标,tuple[index]

python-list、tuple_第25张图片

  元组——强行修改

如果想要强行修改元组的话,可以把元组转换成列表,修改完之后再转换成元组

 python-list、tuple_第26张图片

   元组——拆包

可以用变量来拆包元组

拆包——变量数和元组内元素数相同

python-list、tuple_第27张图片

 拆包——变量数和元组内元素数不同

当变量数和元组内元素数不同时直接拆包会出错

python-list、tuple_第28张图片

 修改后——在一个变量名前加 “*” 表示要接收多余的元素

python-list、tuple_第29张图片

分配原则:a,c对应一个,剩下的留给b 

python-list、tuple_第30张图片

 理解:加*号以后的变量从后往前拆分元组内的元素,如上图c对应倒数第一个元素"f",

b对应倒数第二个元素"e",其余的拆分给a


 自我总结

列表相当于一个存储数据的集合,可以索引值,可以增删查改。

列表访问时可以使用切片。
1.切片是两个范围之间取值,且后面的数取不到
2.切片时范围超过也没有关系
3.切片时还可以指定步长

元组是不能修改的列表,支持初始化和访问,不支持修改。


做好现在该做的,剩下的事给好运一些时间。

你可能感兴趣的:(python,python)