python列表之部分列表——切片
目录
切片
全索引
我们平常可能需要使用一个列表中的子列表,也就是部分元素,这个时候我们就需要用到切片这个功能啦
要创建切片,就如同range()函数一样,需要用到元素的索引,如下列所示
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
print(list_1[0:3])
这里打印的切片从索引0到索引3结束,并且不包括索引3,所以只打印了三个元素
['SWS', 'SSN', '慢蜗牛']
我们这里的索引可以随意定义,但是如果超过了列表的最后一个索引会怎么样,大家可以试试
但是注意!!!我们这里是不包含最后一个索引的,遇到最后一个索引就直接退出
半索引
如果我们没有指定第一个索引,python就会自动从列表开头开始
没有指定最后一个索引,python就会自动结束在列表末尾
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
print(list_1[:4])
print(list_1[1:])
['SWS', 'SSN', '慢蜗牛', '小蜗牛']
['SSN', '慢蜗牛', '小蜗牛', '小滴水']
负数索引
我们这里还可以用负数索引来返回列表末尾相应距离的切片
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
print(list_1[-4:])
['SSN', '慢蜗牛', '小蜗牛', '小滴水']
遍历切片
如果要遍历切片,我们可以使用for循环,如:
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
for sws in list_1[:4]:
print(sws.title())
我们这里遍历切片了前四个元素
Sws
Ssn
慢蜗牛
小蜗牛
复制列表
想要复制一个列表,并且复制的列表的改变不会影响原列表,那我们应该怎么办呢,来看看这个方法可不可以
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
list_2 = list_1
list_2.append('追尾的猫')
print(list_2)
print(list_1)
我们这里创建了一个列表,并且把这个列表用赋值符'='给了第二个列表
然后用append()函数来改变第二个列表的值,来看看两个列表是否同时改变
['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水', '追尾的猫']
['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水', '追尾的猫']
结果跟我们想要的大相径庭呀
其实对于列表来说,用'='来操作就相当于让两个指针同时指向了一个对象
当其中一个指针改变这个对象时,因为指向的是同一个对象,所以另一个指针的对象也会改变
那么我们应该怎么来复制一个列表呢,别忘了我们前面讲过的切片呀
list_1 = ['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
list_2 = list_1[:]
list_2.append('追尾的猫')
print(list_2)
print(list_1)
['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水', '追尾的猫']
['SWS', 'SSN', '慢蜗牛', '小蜗牛', '小滴水']
python列表之部分列表——切片的更多相关文章
- python的高级特性:切片,迭代,列表生成式,生成器,迭代器
python的高级特性:切片,迭代,列表生成式,生成器,迭代器 #演示切片 k="abcdefghijklmnopqrstuvwxyz" #取前5个元素 k[0:5] k[:5] ...
- .Net程序员之Python基础教程学习----列表和元组 [First Day]
一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...
- python的元组和列表使用之一
Python的列表和元组 1. 概述 列表是用方括号[]包围的数据集合,不同的成员之间用逗号进行分隔,列表可以通过序号来进行访问其中的成员,可以对列表进行排序.添加.删除操作,改变列表中某 ...
- Python中多个列表与字典的合并方法
Python中多个列表与字典的合并方法 1多列表的合并 1)a+=b a=['] b = ['] a += b print(a) >>>['] 2) a.extend(b) a=[' ...
- python之路:列表及元组之定义
python开发之路:列表及元组之定义 列表是以后用处较大的一个数据类型,这种数据类型可以存储按组分类的信息.好了,我不多说,开始讲了! 好了,现在我有个情景,我要存东汉时期(韩国,秦国,……)所 ...
- python基础数据类型--list列表
列表: 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li = [‘alex ...
- Python学习day4 数据类型Ⅱ(列表,元祖)
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...
- 洗礼灵魂,修炼python(15)--列表进阶话题—>列表解析/列表生成器
是的,我是想到什么知识点就说什么,没有固定的主题,我的标题都是在写完博客再给的.本篇博文说说列表进阶话题.其实列表应该是比较熟悉的了,而毫不夸张的说,在实际的开发中,列表也是使用的最多的,以后你会体会 ...
- Python内置数据结构--列表
本节内容: 列表 元组 字符串 集合 字典 本节先介绍列表. 一.列表 一种容器类型.列表可以包含任何种类的对象,比如说数字.子串.嵌套其他列表.嵌套元组. 任意对象的有序集合,通过索引访问其中的元素 ...
- python之路---04 列表 元组
十七 .列表 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 1.列表存在索引和切片. 和字符串是一样的. 2.增删改查操作 1).增加 1. .append(&quo ...
随机推荐
- 用 Python 自动创建 Markdown 表格 - 每天5分钟玩转 GPT 编程系列(4)
目录 1. 他们居然问我要 Prompts 2. 让 GPT-4 来写代码 2.1 我对 DevChat 说 2.2 DevChat 回答 2.3 我又对 DevChat 说 2.4 DevChat ...
- 老问题了:idea中使用maven archetype新建项目时卡住
背景 作为一个后端Java打工人,idea就是最重要的打饭工具.创建项目,熟悉吧,但是,这么多年下来,因为idea换了版本,电脑换了等等,我还是时不时遇到根据maven archetype新建mave ...
- 《Linux基础》03. 运行级别 · 实用指令
@ 目录 1:运行级别 2:帮助指令 2.1:man 2.2:help 3:文件目录指令 3.1:pwd 3.2:ls 3.3:cd 3.4:mkdir 3.5:rmdir 3.6:touch 3.7 ...
- 浅谈API安全的应用
理论基础 API它的全称是Application Programming Interface,也叫做应用程序接口,它定义了软件之间的数据交互方式.功能类型.随着互联网的普及和发展,API 从早期的 ...
- QA|ValueError: write to closed file报错怎么debug|IHRM接口自动化测试
unittest生成自动化测试报告时报错ValueError: write to closed file,如下图 代码如下: 原因排查:因为with open打开文件后会自动关闭,也就是上图16行执行 ...
- CodeIgniter 视图篇
什么是视图 简单来说,一个视图其实就是一个 Web 页面,或者页面的一部分,像页头.页脚.侧边栏等. 实际上,视图可以很灵活的嵌在另一个视图里,然后这个视图再嵌在另一个视图里,等等, 如果你想使用这种 ...
- DP模拟题
Smiling & Weeping ----寒灯纸上,梨花雨凉,我等风雪又一年 # [NOIP2007 普及组] 守望者的逃离 ## 题目背景 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深 ...
- subDomainBrute源码分析
SubDomainsBrute简介 SubDomainsBrute是一款目标域名收集工具 ,用小字典递归地发现三级域名.四级域名.五级域名等不容易被探测到的域名.字典较为全面,小字典就包括3万多条 ...
- numpy 中的nan和常用的统计方法
- SQL Server查询数据库中的表
SQL Server查询数据库中的表 SSMS中用不了MySQL中的show 查询当前数据库中所有表名: SELECT name FROM sysobjects WHERE (xtype = 'U') ...