百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

计划:第04天 初识python之列表(python列表讲解)

off999 2024-10-16 11:21 23 浏览 0 评论

今天是晓明兄 “30天python处理Excel计划”第04天,每天15分钟,轻松掌握Python,要坚持呦~。有些时候我们处理的数据很简单,很容易处理。但是偶尔也会遇到比较复杂的数据。

所以为了降低复杂性,我们通常会数据区分、归类成为一个个的列表,例如:课程表、行程表、电话表等等。python同样具有这样的功能,下面我们将学习到python中列表的定义及操作。


01 今日目标

1. 熟悉列表(list)的创建

2.熟悉列表(list)的基本操作


02 列表初始

list列表 是python内置的一种有序的集合,可以添加、删除其中的元素。

  • list列表 定义:用“[]”定义 用“,”隔开

列表初始化

我们先从简单的列表入手,下面有一组同学姓名:

zhangSan
liSi
wangWu

以python能理解的方式写:

names = ['zhangSan','liSi','wangWu']
list定义解析:
1. 在列表的两边需要用`[ ]`中括号括起来
2. 在字符串数据两边加引号(单引号或双引号),例:在名字两边加引号'zhangSan'或"zhangSan"  
3. 用逗号将多个数据分开'zhangSan','liSi'
4. 使用复制操作 = ,将名字列表复制给 names 变量

查询列表中的元素

  • list列表中的每个元素都分配位置或索引,第一个索引是0,第二个索引是1,依此类推。

用索引来访问list中每一个位置的元素,记得索引是从0开始的:

>>> names = ['zhangSan','liSi','wangWu']
>>> names[0]
'zhangSan'

>>> age = [18,20,25]
>>> age[0]
18
>>> age[1]
20
  • 要注意索引不能超过范围,试一试:
>>> names = ['zhangSan','liSi','wangWu']
>>> names[3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

错误:list index out of range,所以,要确保索引不要越界,记得第一个索引是从0开始,最后一个元素的索引是:“列表长度 - 1” 即 names 的列表长度是 3,最后一个索引是 2。

列表截取

>>> names = ['zhangSan','liSi','wangWu']
>>> names[2]
'wangWu'
>>> names[-2]
'liSi'
>>> names[1:]
['liSi', 'wangWu']

解析:

表达式结果解析names[2]'wangWu'读取列表中第三个元素names[-2]'liSi'读取列表中倒数第二个元素names[1:]['liSi', 'wangWu']从第二个元素开始截取列表

添加列表元素

  • 使用 append() 方法,在列表末尾追加数据:
>>> names = ['zhangSan','liSi','wangWu']
>>> names.append('xiaoMing')
>>> names
['zhangSan', 'liSi', 'wangWu', 'xiaoMing']
  • 使用 insert(索引,值)方法,在指定位置插入,比如索引号为1的位置:
>>> names = ['zhangSan','liSi','wangWu']
>>> names.insert(1,'xiaoMing')
>>> names
['zhangSan', 'xiaoMing', 'liSi', 'wangWu']

删除列表元素

  • 使用pop()方法,删除列表末尾的元素:
>>> names = ['zhangSan','liSi','wangWu']
>>> names.pop()
'wangWu'
>>> names
['zhangSan', 'liSi']
  • 使用pop(索引)方法,删除指定位置的元素:
>>> names = ['zhangSan','liSi','wangWu']
>>> names.pop(1)
'liSi'
>>> names
['zhangSan', 'wangWu']

修改列表元素

  • 使用=直接赋值对应的索引位置:
>>> names = ['zhangSan','liSi','wangWu']
>>> names[1] = 'xiao'
>>> names
['zhangSan','xiao','wangWu']

列表函数

表达式结果描述len([1,2,3])3len() 获取列表长度max([1,2,3])3max() 获取列表最大值min([1,2,3])1min() 获取列表最小值[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]+ 组合


03 列表进阶

列表混合类型

python列表中可以混合数据类型,即在同一个列表中混合存放字符串、数字、列表、等等(任意类型)。

试一试:

向names列表names = ['zhangSan','liSi','wangWu']中插入相应的年龄,改变列表,使之成为下面的形式['zhangSan',18,'liSi',20,'wangWu',26]

解答:

>>> names = ['zhangSan','liSi','wangWu']
>>> names.insert(1,18)
>>> names
['zhangSan', 18, 'liSi', 'wangWu']

>>> names.insert(3,20)
>>> names
['zhangSan', 18, 'liSi', 20, 'wangWu']

>>> names.append(26)
>>> names
['zhangSan', 18, 'liSi', 20, 'wangWu', 26]

恭喜你,到这里列表的基本操作已经学会了。不要松懈下面将讲解实际中经常出现的一种形式,多维列表。

多维列表

上面讲列表中可以混合数据类型,例如:列表中包含另一个列表(二维数组)。

>>> names = ['zhangSan','liSi',['xiao','ming'],'wangWu']
>>> len(names)
4

解析:注意列表names的长度只有4个,其中包含一个列表['xiao','ming']。下面进一步拆解:

>>> nameA = ['xiao','ming']
>>> nameB = ['zhangSan','liSi',nameA,'wangWu']
>>> nameB
['zhangSan', 'liSi', ['xiao', 'ming'], 'wangWu']

好,现在需要获取'ming'需要怎么做?

要拿到ming先要找到nameA所在nameB中的索引“2”,然后在nameA中ming的索引“1”,即:nameB[2][1]


04 小结

  1. 列表创建:使用"[]"中括号包裹,用“,”英文逗号分隔。
  2. 列表是一种有序的数据集合。
  3. 列表的基本操作包括查询、修改、删除。

NOW现在行动! 晓明兄,现在行动


  • 答案:xiao
  • 原题: 最后一行打印出来的是xiao还是ok呢?a = 'xiao'
    b = a
    a = 'ok'
    print(b)

解析:

1. 执行`a = 'xiao'`,这个时候变量`a`指向了`xiao`

2. 执行`b = a`,这个时候变量`b`也指向了`xiao`,==注意b指向的是 字符串`'xiao'` 并不是 变量`'a'`==

3. 执行`a = 'ok'`,这个时候变量`a`指向了`ok`

如果获取列表中的内容?

names = [
    ['A', 'B', 'C'],
    ['D', 'E', 'F', 'G'],
    ['H', 'I', 'J']
]

问题1:请获取列表中'A'?问题2:请获取列表中'F'?问题3:请获取列表中'H'?

相关推荐

面试官:来,讲一下枚举类型在开发时中实际应用场景!

一.基本介绍枚举是JDK1.5新增的数据类型,使用枚举我们可以很好的描述一些特定的业务场景,比如一年中的春、夏、秋、冬,还有每周的周一到周天,还有各种颜色,以及可以用它来描述一些状态信息,比如错...

一日一技:11个基本Python技巧和窍门

1.两个数字的交换.x,y=10,20print(x,y)x,y=y,xprint(x,y)输出:102020102.Python字符串取反a="Ge...

Python Enum 技巧,让代码更简洁、更安全、更易维护

如果你是一名Python开发人员,你很可能使用过enum.Enum来创建可读性和可维护性代码。今天发现一个强大的技巧,可以让Enum的境界更进一层,这个技巧不仅能提高可读性,还能以最小的代价增...

Python元组编程指导教程(python元组的概念)

1.元组基础概念1.1什么是元组元组(Tuple)是Python中一种不可变的序列类型,用于存储多个有序的元素。元组与列表(list)类似,但元组一旦创建就不能修改(不可变),这使得元组在某些场景...

你可能不知道的实用 Python 功能(python有哪些用)

1.超越文件处理的内容管理器大多数开发人员都熟悉使用with语句进行文件操作:withopen('file.txt','r')asfile:co...

Python 2至3.13新特性总结(python 3.10新特性)

以下是Python2到Python3.13的主要新特性总结,按版本分类整理:Python2到Python3的重大变化Python3是一个不向后兼容的版本,主要改进包括:pri...

Python中for循环访问索引值的方法

技术背景在Python编程中,我们经常需要在循环中访问元素的索引值。例如,在处理列表、元组等可迭代对象时,除了要获取元素本身,还需要知道元素的位置。Python提供了多种方式来实现这一需求,下面将详细...

Python enumerate核心应用解析:索引遍历的高效实践方案

喜欢的条友记得关注、点赞、转发、收藏,你们的支持就是我最大的动力源泉。根据GitHub代码分析统计,使用enumerate替代range(len())写法可减少38%的索引错误概率。本文通过12个生产...

Python入门到脱坑经典案例—列表去重

列表去重是Python编程中常见的操作,下面我将介绍多种实现列表去重的方法,从基础到进阶,帮助初学者全面掌握这一技能。方法一:使用集合(set)去重(最简单)pythondefremove_dupl...

Python枚举类工程实践:常量管理的标准化解决方案

本文通过7个生产案例,系统解析枚举类在工程实践中的应用,覆盖状态管理、配置选项、错误代码等场景,适用于Web服务开发、自动化测试及系统集成领域。一、基础概念与语法演进1.1传统常量与枚举类对比#传...

让Python枚举更强大!教你玩转Enum扩展

为什么你需要关注Enum?在日常开发中,你是否经常遇到这样的代码?ifstatus==1:print("开始处理")elifstatus==2:pri...

Python枚举(Enum)技巧,你值得了解

枚举(Enum)提供了更清晰、结构化的方式来定义常量。通过为枚举添加行为、自动分配值和存储额外数据,可以提升代码的可读性、可维护性,并与数据库结合使用时,使用字符串代替数字能简化调试和查询。Pytho...

78行Python代码帮你复现微信撤回消息!

来源:悟空智能科技本文约700字,建议阅读5分钟。本文基于python的微信开源库itchat,教你如何收集私聊撤回的信息。[导读]Python曾经对我说:"时日不多,赶紧用Python"。于是看...

登录人人都是产品经理即可获得以下权益

文章介绍如何利用Cursor自动开发Playwright网页自动化脚本,实现从选题、写文、生图的全流程自动化,并将其打包成API供工作流调用,提高工作效率。虽然我前面文章介绍了很多AI工作流,但它们...

Python常用小知识-第二弹(python常用方法总结)

一、Python中使用JsonPath提取字典中的值JsonPath是解析Json字符串用的,如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的,使用jsonpat...

取消回复欢迎 发表评论: