博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 列表(列表推导式) 元组 集合 字典 字符串案例详讲系列________列表
阅读量:3933 次
发布时间:2019-05-23

本文共 2168 字,大约阅读时间需要 7 分钟。

写在前:不管我们学任何语言,如果对其进行增删查改都是最重要,可以说在学习列表,元组,集合,字符串的最基本的也是如何对其增删查改

有序列表:列表 元组 字符串

无序列表:字典 集合
可变序列:列表 字典 集合
不可变序列:元组 字符串

列表详讲

列表

应用场景:列表是最常用的一个用法,在我们挨个挨个提取数据的时候需要用到列表; 需要对其进行排序等操作的时候也一般转换成列表

  1. 创建一个空列表 a=[]
  2. 列表转换:list((3,5,6,7,8)) #将元组转换成列表 [3,5,6,7,8]

1. 列表的增加 append(),insert(),extend()

  1. append()用于向列表尾部追加一个元素
  2. insert(m,n)用于向列表任意一个位置m插入一个元素n
  3. extend()用于将另一个列表中的元素追加到当前列表的尾部
  4. 其中append()是最常见的增加用法,三者都不影响列表对象在内存中的起始地址

案例:

x=[1,2,3]x.append(4)x

[1, 2, 3, 4]

x=[1,2,3]x.insert(2,0)x

[1, 2, 0, 3]

x=[1,2,3]x.extend([4,5,6])x

[1, 2, 3, 4, 5, 6]

2.列表的删除pop() remove() clear()

  1. pop()用于删除并返回指定位置
  2. remove()用于删除列表中第一个值与指定值相等的元素
  3. clear()用于清空列表中的所有元素
  4. 使用del命令删除列表中指定位置的元素

案例

x=[1,2,3,423,213]print(x.pop(2))print(x)

3

[1, 2, 423, 213]

x=[1,2,3,423,213]print(x.remove(2))print(x)

None

[1, 3, 423, 213]

x=[1,2,3,423,213]print(x.clear())print(x)

None

[]

3. 列表的访问(查) index() count() reverse() sort(key=none,reverse=False)(这几个函数很重点!)

  1. 直接索引 x[1]
  2. index()用于返回指定元素在列表中首次出现的位置(最常用)
  3. count()用于返回列表中指定元素出现的次数
  4. sort()用于按照指定的规则对元素进行排序默认的reverse是升序排序(重点重点重点!)
  5. sorted()和sort()的区别是什么呢?
x=list("python sadapjkajisudht")print(x)print("第一种索引方法,直接索引:",x[1])print("第二种索引方法 index():",x.index("p"))print("count:",x.count("t"))

[‘p’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’, ’ ', ‘s’, ‘a’, ‘d’, ‘a’, ‘p’, ‘j’, ‘k’, ‘a’, ‘j’, ‘i’, ‘s’, ‘u’, ‘d’, ‘h’, ‘t’]

第一种索引方法,直接索引: y
第二种索引方法 index(): 0
count: 2

sort()

key:以什么规则排序 abs,len 或者用匿名函数代替
reverse:是否升序排列

x=list(range(11))import randomrandom.shuffle(x)

[5, 0, 8, 6, 3, 1, 7, 10, 9, 2, 4]

x.sort()x

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

x.sort(key=lambda item:len(str(item)),reverse=True)x

[10, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

用字符串的长度为排序规则降序排序,10的长度为2在最前面 其他的都为1序列不变

4. 列表对象的运算符

+也可以起到实现列表增加元素目的,但是这个运算符不会原地操作,而是返回心列表
x=[1,2,3]print(id(x))y=x+[2,3,4]yy*=2y

140242542081472

[1, 2, 3, 2, 3, 4]
[1, 2, 3, 2, 3, 4, 1, 2, 3, 2, 3, 4]

测试成员是否在列表内可以使用in

3 in [1,2,3]

True

内置对象的使用

all(x) # 测试是否所有的元素都为Truemax(x) # 返回列表中最大的元素min(x) # 返回列表中最小的元素sum(x) # 返回列表中所有元素的和

列表推导式

案例1:

a=[x*x for x in range(10)]a

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

等价与:

a=[]for x in range(10):    a.append(x*x)

案例2:

f=['apple','banba','passon']a=[w.strip()for w in f]a

[‘apple’, ‘banba’, ‘passon’]

等价

a=list(map(lambda x:x.strip(),f))

转载地址:http://jyhgn.baihongyu.com/

你可能感兴趣的文章
项目成本管理脉络
查看>>
项目质量管理脉络
查看>>
项目人力资源管理脉络
查看>>
项目沟通管理脉络
查看>>
项目风险管理脉络
查看>>
项目采购管理脉络
查看>>
项目管理总结
查看>>
java内存区域的分布
查看>>
Java跨平台的构思分析
查看>>
linux目录结构名称对照
查看>>
设计的理念
查看>>
多线程专题 - 脉络图
查看>>
javascript 函数,BOM
查看>>
javascript 客户端能力检测
查看>>
javascript DOM详解之DOM1
查看>>
javascript DOM扩展
查看>>
矛盾论读书笔记
查看>>
规则 - 利用CDN缓存
查看>>
什么是统计学中的 Standard Error ( SE )?
查看>>
统计学中的标准差(SD)和 平均值的标准误差(SEM)的区别
查看>>