热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python基础学习笔记十二(序列)

版权声明:本文为小异常原创文



版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!

本文网址:https://blog.csdn.net/sun8112133/article/details/95882859


文章目录

  • 一、序列分类
  • 二、修改序列
    • 1、通过索引直接修改元素
    • 2、通过切片修改元素
    • 3、通过切片步长修改元素
  • 三、删除元素
    • 1、通过 del 删除指定索引的元素
    • 2、通过切片删除元素
    • 3、通过切片步长删除元素
  • 四、序列方法(只对可变序列使用)
  • 五、遍历序列
    • 1、普通遍历方式(通过索引遍历)
    • 2、while循环遍历
    • 3、for循环遍历
  • 六、range()函数
    • 1、语法格式
    • 2、使用
    • 3、案例代码










序列(sequence) 是Python中最基本的一种数据结构。它用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置(索引)。

序列 中的数据会按照添加的顺序来分配索引。

Python基础学习笔记十二(序列) - 文章图片



一、序列分类

  • 可变序列(序列中的元素可以改变)

    • 列表(list)



  • 不可变序列(序列中的元素不能改变)

    • 字符串(str)

    • 元组(tuple)



  • 注意: 只能修改可变序列的元素,而不可变序列的元素是不能改变的!!如果想改变不可变序列中的元素,可以使用 list() 函数把不可变序列 转为 列表数据类型。

s = 'hello'
s = list(s)
print(type(s))
#

Python基础学习笔记十二(序列) - 文章图片





二、修改序列

1、通过索引直接修改元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 修改索引为0的元素
stus[0] = 'sunwukong'
print(stus)
# ['sunwukong', '猪八戒', '沙和尚', '唐僧', '蜘蛛精', '白骨精']

Python基础学习笔记十二(序列) - 文章图片



2、通过切片修改元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 使用新的元素替换旧元素
stus[0:2] = ['牛魔王','红孩儿']
print(stus)
# ['牛魔王', '红孩儿', '沙和尚', '唐僧', '蜘蛛精', '白骨精']
# 如果新元素的个数比旧元素多,会依次排列
stus[0:2] = ['牛魔王','红孩儿','二郎神']
print(stus)
# ['牛魔王', '红孩儿', '二郎神', '沙和尚', '唐僧', '蜘蛛精', '白骨精']
# 向索引为0的位置插入元素
stus[0:0] = ['牛魔王']
print(stus)
# ['牛魔王', '牛魔王', '红孩儿', '二郎神', '沙和尚', '唐僧', '蜘蛛精', '白骨精']

Python基础学习笔记十二(序列) - 文章图片



3、通过切片步长修改元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 通过步长修改元素
stus[::2] = ['牛魔王','红孩儿','二郎神']
print(stus)
# ['牛魔王', '猪八戒', '红孩儿', '唐僧', '二郎神', '白骨精']

Python基础学习笔记十二(序列) - 文章图片





三、删除元素

1、通过 del 删除指定索引的元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 删除索引为2的元素
del stus[2]
print(stus)
# ['孙悟空', '猪八戒', '唐僧', '蜘蛛精', '白骨精']

Python基础学习笔记十二(序列) - 文章图片



2、通过切片删除元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 通过切片直接删除(方式一)
del stus[0:2]
print(stus)
# ['沙和尚', '唐僧', '蜘蛛精', '白骨精']
# 通过切片直接删除(方式二)
stus[1:3] = []
print(stus)
# ['沙和尚', '白骨精']

Python基础学习笔记十二(序列) - 文章图片



3、通过切片步长删除元素

# 创建一个列表
stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
# 通过切片步长删除元素
del stus[::2]
print(stus)
# ['猪八戒', '唐僧', '白骨精']

Python基础学习笔记十二(序列) - 文章图片





四、序列方法(只对可变序列使用)









































方法名称方法说明
append()向序列的最后添加一个元素
insert()向序列的指定位置插入一个元素 参数:1.要插入的位置 2.要插入的元素
extend()使用新的序列来扩展当前序列,需要一个序列作为参数,它会将该序列中的元素添加到当前列表中
clear()清空序列
pop()根据索引删除并返回被删除的元素
remove()删除指定值的元素,如果相同值的元素有多个,只会删除第一个,没有返回值
reverse()用来反转序列
sort()用来对序列中的元素进行排序,默认是升序 排列(从小到大排序)

# 序列方法
my_list = [1,2,3,4,5]
# append(元素):向后添加一个元素
my_list.append('abc')
print(my_list)
# [1, 2, 3, 4, 5, 'abc']
# insert(索引, 元素):向指定位置添加一个元素
my_list.insert(2, 'qq')
print(my_list)
# [1, 2, 'qq', 3, 4, 5, 'abc']
# extend(序列):将一个序列中的全部元素添加到该序列的末尾
new_list = [11, 22, 33]
my_list.extend(new_list)
print(my_list)
# [1, 2, 'qq', 3, 4, 5, 'abc', 11, 22, 33]
# clear():清空序列
# my_list.clear()
# print(my_list)
# []
# pop(索引):根据索引删除并返回被删除的元素
a = my_list.pop(2)
print(a)
# qq
print(my_list)
# [1, 2, 3, 4, 5, 'abc', 11, 22, 33]
# remove(值):删除指定值的元素,如果相同值的元素有多个,
# 只会删除第一个,没有返回值
my_list = [1,2,3,4,1,2,1]
my_list.remove(1)
print(my_list)
# [2, 3, 4, 1, 2, 1]
# reverse():反转列表
my_list.reverse()
print(my_list)
# [1, 2, 1, 4, 3, 2]
# sort():用来对列表中的元素进行排序,元素类型必须一致,
# 默认是升序排列(从小到大排序)
my_list = ['a','b']
my_list.sort()
print(my_list)

Python基础学习笔记十二(序列) - 文章图片





五、遍历序列

1、普通遍历方式(通过索引遍历)

# 创建一个列表
stus = [1,2,3,4]
# 通过索引获取每一个元素
print(stus[0])
print(stus[1])
print(stus[2])
print(stus[3])

Python基础学习笔记十二(序列) - 文章图片



2、while循环遍历

# 创建一个列表
stus = [1,2,3,4]
# 定义变量
i = 0
while i print(stus[i])
i += 1

Python基础学习笔记十二(序列) - 文章图片



3、for循环遍历

# 创建一个列表
stus = [1,2,3,4]
# 遍历列表
for s in stus:
print(s)

Python基础学习笔记十二(序列) - 文章图片





六、range()函数

range()函数 用来生成一个自然数的序列。


1、语法格式

range(起始位置,结束位置,步长)


  • 参数

    • 起始位置:可以省略,默认是0

    • 结束位置

    • 步长:可以省略,默认是1






2、使用


通过 range() 可以创建一个执行指定次数的 for循环。

for i in range(10):
print(i, end=' ')

Python基础学习笔记十二(序列) - 文章图片



3、案例代码

# 生成自然数序列
r = range(5)
print(list(r))
# [0, 1, 2, 3, 4]
r = range(0,10,2)
print(list(r))
# [0, 2, 4, 6, 8]
r = range(10,0,-1)
print(list(r))
# [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

Python基础学习笔记十二(序列) - 文章图片





博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!








推荐阅读
  • 使用Numpy实现无外部库依赖的双线性插值图像缩放
    本文介绍如何仅使用Numpy库,通过双线性插值方法实现图像的高效缩放,避免了对OpenCV等图像处理库的依赖。文中详细解释了算法原理,并提供了完整的代码示例。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文介绍如何使用 Python 编写程序,检查给定列表中的元素是否形成交替峰值模式。我们将探讨两种不同的方法来实现这一目标,并提供详细的代码示例。 ... [详细]
  • 本文介绍如何使用 Python 将一个字符串按照指定的行和元素分隔符进行两次拆分,最终将字符串转换为矩阵形式。通过两种不同的方法实现这一功能:一种是使用循环与 split() 方法,另一种是利用列表推导式。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 本文详细介绍 Go+ 编程语言中的上下文处理机制,涵盖其基本概念、关键方法及应用场景。Go+ 是一门结合了 Go 的高效工程开发特性和 Python 数据科学功能的编程语言。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • python的交互模式怎么输出名文汉字[python常见问题]
    在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>,此时我们可以使用print() ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
author-avatar
wenxuanlee
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有