天天看点

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

人生苦短,你用python吗?

化学专业的小凯,却喜欢上了计算机语言,业余时间入门了python,从此无法自拔,话不多说,接下来与大家分享我的学习笔记。(元组、列表)

Python中的数据结构主要有序列、集合、字典。

一.元组

元组(tuple)是一种序列(sequence)结构。

1.序列

序列是一种可迭代的、元素有序、可以重复出现的数据结构,序列可以通过索引访问元素。

序列包括:

  • 列表(list)
  • 字符串(str)
  • 元组(tuple)
  • 范围(range)
  • 字节序列(bytes)

序列可进行的操作有索引、分片、加和乘。

2.创建元组

元组是一种不可变序列,一旦创建就不能修改。创建元组可以使用tuple([iterable])函数或者直接用逗号将元素分开。

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

创建元组需要注意:

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

()可以创建空元组

元组只有一个元素时,后面的逗号不能省略

3.访问元组

元组作为序列可以通过下标索引访问其中的元素,也可以对其进行分片。

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

元组还可以进行拆包(Unpack)操作,就是将元组的元素取出来赋值给不同的变量。

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

第①行是将元组a进行拆包操作,接收拆包元素的变量的个数应该等于元组个数,接收变量个数可以少于元组个数。第②行接收变量个数只有三个,最后一个很特殊,变量n前面有个星号,表示剩下的元素作为一个列表赋值给变量n,另外,还可以使用下划线指定不取值哪些元素,第③行表示不取第二个和第五个元素。

4.遍历元组

一遍使用for循环遍历元组

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

一般情况下,遍历目的只是取出每一个元素值,见代码第一个for循环,但有时需要在遍历的过程中同时获取索引,可以使用第二个for循环,其中enumerate(a)函数可以获取元组对象,该元组对象有两个元素,第一个元素索引,第二个是元素的值。

二.列表

列表(list)也是一种序列结构,与元组不同,列表具有可变性,可以追加、插入、删除和替换列表中的元素。

1.创建列表

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

创建列表时[]不能省略,否则就变成元组了。创建空列表是[ ],列表中可以放入任何对象。还可以通过list([iterable])创建,('Hello','XiaoKai',1,2,3,4,5)是一个元组,元组是可迭代对象,可以作为list()函数参加创建列表对象。

2.追加元素

列表中追加元素的方法可以使用append()方法,如果想追加另一个列表,可以使用+运算符或者extend()方法。

list.append(x) #x参数是要追加的单个元素list.extend(t) #t参数是要追加的另外一个列表
           
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

3.插入元素

插入元素可以用insert()方法,该方法可以在指定索引位置插入一个元素。

insert(i,x)
           

参数i是索引,参数x是要插入的元素

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

4.替换元素

通过列表下标将索引元素放在赋值符号“=”左边,进行替换。

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

5.删除元素

remove()方法和pop()方法

(1)remove()方法

从左到右查找列表中的元素,如果找到匹配元素则删除,如果找到多个匹配元素,那么只删除第一个,如果没有找到,则抛出错误

list.remove()
           
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

(2)pop()方法

它会将删除的元素返回

list.pop([i]) 参数i是指定删除元素的索引,可以省略,表示删除最后一个元素
           
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

6.其他常用方法

  • reverse():倒置列表
  • copy():复制列表
  • clear():清除列表中的所有元素
  • index(x[,i[,j]]):返回查找x第一个出现的索引,i是开始查找索引,j是结束查找索引,该方法继承自序列,元组和字符串也可以使用这个方法
  • count(x):返回x出现的次数,同样继承自序列,元组和字符串可以使用这个方法
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

7.列表推导式

他可以将一种数据结构作为输入,经过过滤、计算等处理,最后输出另一种数据结构。

  • 列表推导式
  • 集合推导式
  • 字典推导式

先说列表推导式

如果想得到0~9中偶数的平方数列,可以通过for循环实现
           
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

也可以通过列表推导式实现

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表
python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表

谢谢大家,下一篇分享数据结构——集合、字典

python findall返回的是列表吗_人生苦短,你用Python吗?(七)数据结构——元组、列表...一.元组二.列表