Python基础教程:列表(list)切片详细操作
1.正向范围取值
关键点
- 首位下标是 0
- 第一个数字是起始下标,第二个数字是结束下标(但最终结果不包含它)
例一:
# 正向范围取值 - 字符串
strs ="https://www.baidu.com/"# 从第 0 个下标开始取值,到第 1 个下标结束,但不会取第 1 个下标的元素,最终取的是 0 下标的值
print(strs[0:1])# 从第 0 个下标开始取值,到第 10 个下标结束,但不会取第 10 个下标的元素,最终取的是 1,2,3,4,5,6,7,8,9 下标的值
print(strs[0:10])# 从第 5 个下标开始取值,到第 10 个下标结束,但不会取第 10 个下标的元素,最终取的是 5,6,7,8,9 下标的值
print(strs[5:10])# 从第 5 个下标开始取值,到第 100 个下标结束,但因为字符串最长就 30 个字符,所以会取到最后一个结束就结束了
print(strs[5:100])# 相同数字返回空
print(strs[5:5])# 第二个数字比第一个数字小,返回空
print(strs[5:4])# 从第 0 个下班开始取值,取后面所有元素
print(strs[0:])# 取前面 10 个元素
print(strs[:10])
运行结果
h
https://ww
://ww
://www.baidu.com/https://www.baidu.com/
https://ww
例二:
'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:725638078
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# 正向范围取值 - 数组
lists = [1, 2, 3, 4, 5, 6, 7]print(lists[0:1])
print(lists[0:10])
print(lists[5:10])
print(lists[5:100])
print(lists[5:5])
print(lists[5:4])
运行结果
[1]
[1, 2, 3, 4, 5, 6, 7]
[6, 7]
[6, 7]
[]
[]
2.反向范围取值
关键点
- 因为是反向,所以倒数的下标从 -1 算起
- 第一个数字是起始下标,第二个数字是结束下标(但最终结果不包含它)
- 第一个数字是负数情况下,第二个数字最大是 -1,如果写成 0 会返回空值
例:
# 反向范围取值 - 字符串
strs = "https://www.baidu.com/"# 取最后 10 个元素
print(strs[-10:])# 取最后 6-10 的元素, 不会取到倒数第五个元素
print(strs[-10:-5])# 反向范围取值 - 列表
lists = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]# 取最后 6 个元素
print(lists[-6:])# 取最后 5 个元素, 但不会取到倒数第 1 个元素
print(lists[-5:-1])# 第二个值写0,返回空值
print(lists[-10:0])# 正数+复数组合
print(lists[1:-5])
运行结果
baidu.com/
baidu
[5, 6, 7, 8, 9, 10]
[6, 7, 8, 9]
[]
[2, 3, 4, 5]
3.[:] 复制对象
例:
'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:725638078
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
lists1 = [1, 2, 3, 4, 5]
lists2 = lists1
lists1.append(6)
print(lists1, lists2, id(lists1), id(lists2))lists1 = [1, 2, 3, 4, 5]
lists2 = lists1[:]
lists1.append(6)
print(lists1, lists2, id(lists1), id(lists2))lists1 = [1, 2, 3, 4, 5, [1, 2, 3]]
lists2 = lists1
lists1[5].append(4)
print(lists1, lists2, id(lists1), id(lists2))lists1 = [1, 2, 3, 4, 5, [1, 2, 3]]
lists2 = lists1[:]
lists1[5].append(4)
print(lists1, lists2, id(lists1), id(lists2))strs1 = "abcd"
strs2 = strs1
strs1 = "abc"
print(strs1, strs2, id(strs1), id(strs2))strs1 = "abcd"
strs2 = strs1[:]
strs1 = "abc"
print(strs1, strs2, id(strs1), id(strs2))
运行结果
[1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6] 2560550555144 2560550555144
[1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5] 2560550627784 2560548023880
[1, 2, 3, 4, 5, [1, 2, 3, 4]] [1, 2, 3, 4, 5, [1, 2, 3, 4]] 2560550627400 2560550627400
[1, 2, 3, 4, 5, [1, 2, 3, 4]] [1, 2, 3, 4, 5, [1, 2, 3, 4]] 2560550627784 2560550627656
abc abcd 2560547930776 2560548937376
abc abcd 2560547930776 2560548937376
[:] 等同于浅拷贝,对可变对象是生效的
4.[::] 步进
例:
# [::]
strs = "https://www.baidu.com/"# 取最后 10 个元素,每 2 个取 1 个
print(strs[-10::2])# 取第 0 到 10 的元素,每 5个 取 1 个
print(strs[0:10:5])print(strs[::])
# 倒序
print(strs[::-1])lists = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]# 取全部元素,每 3 个 取 1 个
print(lists[::3])
# 倒序
print(lists[::-1])
运行结果
biucm
h:
https://www.baidu.com/
/moc.udiab.www//:sptth
[1, 4, 7, 10]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
结尾给大家推荐一个非常好的学习教程,希望对你学习Python有帮助!
Python基础入门教程推荐:更多Python视频教程-关注B站:Python学习者
https://www.bilibili.com/video/BV1LL4y1h7ny?share_source=copy_web
Python爬虫案例教程推荐:更多Python视频教程-关注B站:Python学习者
https://www.bilibili.com/video/BV1QZ4y1N7YA?share_source=copy_web
Python基础教程:列表(list)切片详细操作相关推荐
- Python基础之列表(list)操作
Python中,列表(list)是python支持的任意类型的元素的集合,相当于其它编程语言中的数组. 创建列表的方法有两种,一种是使用中括号[]进行创建: >>> [1,2,'x' ...
- Python基础教程:字符串的常用操作
在Python中字符串的表达方式有四种 一对单引号 一对双引号 一对三个单引号 一对三个双引号 a = 'abc' b= "abc" c = '''abc''' d = " ...
- python print 输出到txt_(Python基础教程之七)Python字符串操作
Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...
- python字符串_(Python基础教程之七)Python字符串操作
Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...
- 最后一篇,小白看的Python基础教程,详细得很(十一)
@Author:Runsen 往期回顾: 第一篇.小白看的 Python 基础教程,详细得很(八) 第二篇.小白看的 Python 基础教程,详细得很(九) 第三篇.小白看的 Python 基础教程, ...
- python修改列表指定位置的_Python 基础教程—列表(1)
Python内置了多种序列,本次讨论:列表.列表是Python提供的容器型数据类型.可变并且有序. 可变 - 列表中的每个元素的值可变,列表的长度可变,列表中的顺序可变.(支持增.删.改) 有序 - ...
- python100例详解-Python基础之列表常见操作经典实例详解
本文实例讲述了Python基础之列表常见操作.分享给大家供大家参考,具体如下: Python中的列表操作 列表是Python中使用最频繁的数据类型[可以说没有之一] 一组有序项目的集合 可变的数据类型 ...
- Python基础教程,Python神仙级入门教程(非常详细)
Python 是一门开源免费.通用型的脚本编程语言,它上手简单,功能强大,坚持「极简主义」. Python 类库(模块)极其丰富,这使得 Python 几乎无所不能,不管是传统的 Web 开发.PC ...
- python基础教程书籍推荐-Python大神推荐给小白的36本入门书籍
Python大神推荐给小白的36本入门书籍 如果看我喜欢可以找我领取Python电子书和学习资料 1.Python编程:从入门到实践 我自己最初看的这本书,觉得非常适合入门 2.python入门经典- ...
- Python是什么?Python基础教程400集大型视频,全套完整视频赠送给大家
2020最新Python零基础到精通资料教材,干货分享,新基础Python教材,看这里,这里有你想要的所有资源哦,最强笔记,教你怎么入门提升!让你对自己更加有信心,重点是资料都是免费的,免费!!! 获 ...
最新文章
- 原创经验:微信小程序开发总结
- 计算机网络实验3:网络设备基本配置
- TCP的慢启动、拥塞避免、重传、快恢复乱七八糟总是记不清?11个连环问让你一次性打通任督二脉
- 【开200数组解决二叉搜索树的建立、遍历】PAT-L3-016. 二叉搜索树的结构——不用链表来搞定二叉搜索树...
- java后端简历项目经历_java后台开发个人简历怎么写
- 手机迅雷打不开html,迅雷打不开了怎么办
- MySQL数据库卸载手册
- python数据标注工具_数据标注工具大全汇总,有了这些工具再也不用自己开发了...
- PS CS6 打不开RAW格式文件
- 图片处理中对于Sigmod函数图像的理解
- 产业安全专家谈|金融行业如何践行《反电信网络诈骗法》?
- 百度地图自定义信息窗口样式
- while循环——求100以内偶数和
- 转自第一财经日报——基亿传媒在中国实验“广告ZARA”
- 如何产生指定分布的随机数?
- 软件定义网络(SDN)为网络交换机厂商带来商机
- C# WinForm dataGridView 技巧小结
- officeaid.addin 系统找不到指定的文件_批量修改文件名方法
- 福建最新建筑施工八大员之(安全员)考试题库真题及答案
- LaTeX支持中文英文混排编译的三种方式—Slager!
热门文章
- Fixed: MacOS Mojave(10.14) 解决终端用Crontab报权限问题(不管是Root还是普通用户)及Linux基础(shell)...
- Redux vs Mobx系列(-):immutable vs mutable
- CentOS下screen 命令详解
- Mina框架项目运用
- SQL -- 是否或推断线相交以在其内部的平面
- ASP.NET AJAX入门系列(9):在母版页中使用UpdatePanel
- java 线性计算_计算线性指数Tensorflow
- 【转载】如何在归档后启用归档信息系统
- 【ABAP】BASE64加密及解密
- SOA与EAI的比较