List列表

  • 一组由有序数据做成的序列

    • 数据具有先后顺序
    • 数据可以不是一类数据
  • list的创建
    • 直接创建,用中括号创建,内容用英文逗号隔开
    • 使用list()创建
    • 列表包含单个字符串的时候是个特列
  • list的常见操作
    • 访问

      • 使用下标操作,也叫索引
      • 列表的元素索引是从0开始
    • 切片操作
      • 对列表进行任意一段的截取
      • 截取之后生成了一段新的列表
      • 允许设置步长
      • 从右往左,第一个下标不是0,是-1
    • 排序
  • list相关函数
  • list练习
# 直接赋值创建列表
L1 = [1, 2, 3, 4, 5]
# list内的数据类型可以不是一个类型
L2 = [1, 2, 3, "jason"]print(L1)
print(L2)
[1, 2, 3, 4, 5]
[1, 2, 3, 'jason']
#
L3 = list()
print(L3)
print(type(L3))
[]
<class 'list'>

内置函数

  • help: 帮忙函数
  • type: 显示变量的类型
  • id: 显示变量的id,用来判断两个变量是否是一个变量
  • print: 打印
s = "Jason liu"L1 = list(s)
print(type(L1))
print(L1)
<class 'list'>
['J', 'a', 's', 'o', 'n', ' ', 'l', 'i', 'u']
# 列表操作案例L1 = [32, 43, 11, 29, 58]# 使用下标访问
print(L1[0])
#print(L1[15])# 切片操作需要注意取值范围,左包括右不包括L1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(L1[1:5])# 切片后生成的是一个全新的列表
# 通过内置函数id可以判断出切片是否生成了全新的列表L2 = L1[0:10]
print(L2)
print(id(L1))
print(id(L2))# 切片下标可以为空
print(L1[:4])
print(L1[2:])
print(L1[:])# 可以控制增长幅度,默认增长幅度为1
print(L1[:5:2])# 下标可以超出范围,超出后不再考虑多余下标内容
print(L1[:100])# 下标增长幅度可以为负数
# 下标为负数,表面顺序是从右往左
# 规定:数组最后一个元素下标是-1#下面例子为空,因为默认是从左向右移动
print(L1[-2:-4])# 如果想利用负数下标打印9,8
print(L1[-2:-4:-1])# 如果想利用负数下标打印8,9
print(L1[-3:-1])
32
[2, 3, 4, 5]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
4370113480
4369266760
[1, 2, 3, 4]
[3, 4, 5, 6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 3, 5]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[]
[9, 8]
[8, 9]
list1 = [1, 3, 5, 7, 9, 11, 13, 15, 17]
list2 = [5, 8, 10, 12, 15, 20, 22, 30]Set1 = set(list1)
Set2 = set(list2)
Set3 = Set1.union(Set2)
List3 = list(Set3)
List3.sort(reverse=True)for i in List3:print(i, end=' ')
30 22 20 17 15 13 12 11 10 9 8 7 5 3 1

列表相关函数

#append() # copy() 复制列表
L1 = [32, 43, 11, 29, 58]
L2 = L1.copy()
print(L2)# count() 计算某个元素在列表中出现的次数
L1 = [32, 43, 11, 29, 58]
print(L1.count(32))# extend() 将一个列表继承另一个列表
b = [1, 2, 3, 4, 5]
b.extend([6, 7, 8])
print(b)# index() 获取值在列表中的索引
b = [1, 2, 3, 4, 5, 2, 4]
print(b.index(2))
print(b.index(3, 2, 5))# insert() 在指定位置前插入元素
b = [1, 2, 3, 4, 5]
b.insert(2, 9)
print(b)# pop() 根据索引移除列表内一个元素,不给索引默认移除最后一个,返回移除的那个值
b = [1, 2, 3, 4, 5]
print(b.pop())
print(b)# remove() 移除列表中指定的值,返回None
b = [1, 2, 3, 4, 5]
b.remove(3)
print(b)# reverse() 列表翻转
b = [1, 2, 3, 4, 5]
print(id(b))
b.reverse()
print(b)
print(id(b))#sort() 排序
b = [4, 2, 5, 8]
b.sort()
print(b)
b.sort(reverse=True)
print(b)
[32, 43, 11, 29, 58]
1
[1, 2, 3, 4, 5, 6, 7, 8]
1
2
[1, 2, 9, 3, 4, 5]
5
[1, 2, 3, 4]
[1, 2, 4, 5]
4579970184
[5, 4, 3, 2, 1]
4579970184
[2, 4, 5, 8]
[8, 5, 4, 2]

练习题

# append()和extend()和insert()a = [1, 2, 3, 4, 5]
a.append([6, 7, 8])
print(a)b = [1, 2, 3, 4, 5]
b.extend([6, 7, 8])
print(b)c = [1, 2, 3, 4, 5]
c.insert(3, 10)
print(c)
[1, 2, 3, 4, 5, [6, 7, 8]]
[1, 2, 3, 4, 5, 6, 7, 8]
[1, 2, 3, 10, 4, 5]
# 假定给出一个列表 member = ["我", "是", "jason"]
# 想要把member变成 member = ["我", 99, "是", 88, "jason", 666]member = ["我", "是", "jason"]
member.insert(1, 99)
print(member)
member.insert(3, 88)
print(member)
member.insert(5, 666)
print(member)
['我', 99, '是', 'jason']
['我', 99, '是', 88, 'jason']
['我', 99, '是', 88, 'jason', 666]
# 请问如何将下边这个列表的"test"修改为"jason“
# ls = [1, 2, ['test'], 3, 5, 8, 13, 18]ls = [1, 2, ['test'], 3, 5, 8, 13, 18]
ls[2] = ['jason']
print(ls)
[1, 2, ['jason'], 3, 5, 8, 13, 18]
# 将列表推导式还原出来
# ls = [(x, y) for x in range(10) for y in range(10) if x%2 == 0 if y%2!=0]#ls = [(x, y) for x in range(10) for y in range(10) if x%2 == 0 if y%2!=0]
#print(ls)ls = list()
for x in range(10):for y in range(10):if x%2 == 0:if y%2 != 0:ls.append((x,y))
print(ls)
[(0, 1), (0, 3), (0, 5), (0, 7), (0, 9), (2, 1), (2, 3), (2, 5), (2, 7), (2, 9), (4, 1), (4, 3), (4, 5), (4, 7), (4, 9), (6, 1), (6, 3), (6, 5), (6, 7), (6, 9), (8, 1), (8, 3), (8, 5), (8, 7), (8, 9), (0, 1), (0, 3), (0, 5), (0, 7), (0, 9), (2, 1), (2, 3), (2, 5), (2, 7), (2, 9), (4, 1), (4, 3), (4, 5), (4, 7), (4, 9), (6, 1), (6, 3), (6, 5), (6, 7), (6, 9), (8, 1), (8, 3), (8, 5), (8, 7), (8, 9)]

截取列表前面100行_python列表相关推荐

  1. 列表输出循环左移_python 列表推导式(经典代码)(21)

    文章首发微信公众号,微信搜索:猿说python 截止到目前为止,python基础内容已经学习了50%左右,在学习编程过程中,我们不仅要学习python语法,同时也需要学习如何把自己代码写的更美观,效率 ...

  2. python列表解析式如何使用_python列表推导式操作解析

    python列表推导式操作解析 这篇文章主要介绍了python列表推导式操作解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 基本格式 ​[表达式 ...

  3. python列表的实现原理_python列表推导式原理和使用方法

    偶尔会在python中看见这样一行代码: data = [x**2 for x in range(0, 5)] # 此时data = [0, 1, 4, 9, 16] 如果不知道背后的语法规则,那么很 ...

  4. python列表解析式如何使用_python列表解析式,生成器,及部分内建函数使用方法...

    标准库datetime 需要导入datetime模块: import datetime datetime模块: 对日期,时间,时间戳的处理 datetime的类方法 today  () now(tz= ...

  5. python列表有哪些操作_python列表的基本操作有哪些

    python列表的基本操作有:1.创建列表,只要把逗号分隔的不同的数据项使用方括号括起来:2.添加新的元素:3.遍历列表:4.访问列表中的值:5.从list删除元素. 相关免费学习推荐:python教 ...

  6. python列表定义和操作_Python 列表的定义及操作

    #列表概念:有序的可变的元素集合 #定义#直接定义 nums = [1,2,3,4,5]#通过range函数构造,python2 和python3 版本之间的差异:#python3 用的时候才会去构造 ...

  7. python列表的实现原理_Python列表对象实现原理

    Python 列表对象实现原理 Python 中的列表基于 PyListObject 实现,列表支持元 素的插入.删除.更新操作,因此 PyListObject 是一个变长 对象(列表的长度随着元素的 ...

  8. python列表操作函数大全_Python列表操作函数

    列表可以进行多个数据的存储,同时python中的列表设计非常到位,它可以实现内容动态扩充,可以进行后期数据的删除,这些就需要通过Python提供的列表操作函数来实现了. 对于Python语言而言,开发 ...

  9. python列表到元祖_python列表与元祖

    python 的列表和元素: 共同点:有序的 区别:1.列表可以修改增加删除列表内容,元组不能修改 联系:元组中包含列表的元素,可以修改列表元素. 分析:1.列表:LIST1=[1,2,3,4,5,6 ...

最新文章

  1. 中国电子学会青少年编程能力等级测试图形化三级编程题:海底寻宝
  2. 预备队员技术验收开始
  3. 石化总部java面试题_中国石化面试经验
  4. Linux Centos安装步骤
  5. 腾讯整治扫码点餐强制关注公众号问题
  6. 95-136-040-源码-Operator-Operator简介
  7. isupper函数用法
  8. 三地五中心(ldc(逻辑数据中心)单元化)和容灾
  9. [jzoj100047]【NOIP2017提高A组模拟7.14】基因变异
  10. spring cloud 实现服务不间断
  11. lombok get/set 方法未生效,解决办法
  12. 扫描远程服务器开放端口
  13. 小学生学计算机flash,利用Flash软件进行小学电脑绘画教学
  14. pytorch自带网络_群友原创:万字长文入门 Pytorch 深度学习框架
  15. html网页北京大学,HTMLDocView-北京大学网络与信息系统研究所.ppt
  16. 实习笔记:空间分析+地形分析+水文分析
  17. 一步步教你用 WebVR 实现虚拟现实游戏
  18. 吴恩达机器学习 学习笔记 之 一 监督学习和无监督学习
  19. 模拟量转485 数据解析
  20. 前端屏幕尺寸和分辨率_web前端开发中常用的尺寸和位置

热门文章

  1. 手绘风格的数据可视化 Sketchify,让你的图表也萌萌哒
  2. Java 基础搞定了,还能学点什么?
  3. Spring Boot中使用LDAP来统一管理用户信息
  4. 12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践
  5. docker oracle创建实例_五分钟教你搭建oracle数据库环境
  6. C#机房重构-datagridview控件的使用
  7. Crypto windows 安装
  8. resnetv2 测试
  9. pytorch cat、stack、tranpose、permute、unsqeeze
  10. 调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配