每天学点儿Python(5) -- 序列索引和切片

Python中,序列是指一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。它类似于C/C++中的数组或字符串,但又比数组或字符串强大很多

序列类型包括字符串、列表、元组、集合和字典

序列的索引

序列的索引包括正索引和负索引

下图为正索引,顺序为从左向右,下标从0开始,依次为0,1,2……

下图为负索引,顺序为从右向左,下标从-1开始,依次为-1,-2,-3……

不论从正索引还是负索引,都能通过下标直接增删改查对应的元素

例如

s='HelloWorld'print(s[1]) #直接输出下标为1的值for i in s:print(i, end=' ') #按顺序输出序列中的值,并以空格隔开

输出结果为

序列的切片

序列的切片其实是同时访问序列中多个元素的方法,其语法结构如下

其中:start不写时默认从序列最左侧(0或-n)开始,end不写默认到序列最右侧,且包含末尾元素,step不写默认为1

例如

s='HelloWorld'print(s[0:5:2])    #从下标0开始,到下标4结束,每隔2个取一个元素
print(s[1:3]) #不写步长(step),则默认为1,等同写print(s[1:3:])
print(s[:3]) #不写start,则默认从0开始,等同写print(s[:3:])
print(s[1:])    #不写end,则默认到序列尾,且包含末尾元素
print(s[1::2])    #不写end,默认到序列尾,且包含末尾元素
print(s[:-1:])    #因为end为-1,所以start默认从最右侧(即-10),不包含-1,步长为1
print(s[-8::])    #因为start为-8,所以end默认为最右侧(即-1),且包含-1,步长为1

输出结果如下

序列相关操作

相关操作如下表所示

例如

s1='Hello'
s2='World's=s1+s2    #序列元素可以直接相加print(s)
print(len(s))    #打印序列s的元素个数
print(max(s))
print(min(s))if 'el' in s:    #判断是否是序列的元素,是区分大小写的print('el in s')if 'hello' not in s:    # hello 和 Hello不相等,判断为Trueprint('区分大小写')print(s.index('l'))    # l 在s序列中第一次出现的位置
print(s.count('l'))    # l 在序列s中出现的次数
#print(s.index('v'))    #运行报错,因为 v 在序列中不存在

执行结果如下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/305839.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ES6 全详解 let 、 const 、解构赋值、剩余运算符、函数默认参数、扩展运算符、箭头函数、新增方法,promise、Set、class等等

目录 ES6概念ECMAScript6简介ECMAScript 和 JavaScript 的关系ES6 与 ECMAScript 2015 的关系 1、let 、 const 、var 区别2、变量解构赋值1、数组解构赋值2、对象解构赋值3、字符串的解构赋值 3、展开剩余运算符1、**展开运算符(...)**2、**剩余运算符(...)** 4、函数的拓展函…

日出6万单!美区“开塞露”卖疯了,保健赛道正式起飞!

质疑养生,理解养生,加入养生! 从保温杯里泡枸杞,到桌上摆满保健品,"养生"已经从一种模糊的概念转变为了生活中的刚需。在加班、熬夜、脱发这些"亚健康"标签的围绕下,年轻人开始重视自…

D-LinkNAS 远程命令执行漏洞(CVE-2024-3273)RCE漏

声明: 本文仅用于技术交流,请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 简介 D-LinkNAS是由D-Link公司制造的网络附加存储设备。…

git 账号 personal access token

新入职,gitlab登录使用公司验证方式 clone项目时,要求填写用户名,access token或密码 用户名:gitlab的名字 access token:从这里获取

函数、指针和数组的相互运用(C语言)

1、函数指针数组 含义:数组的每个元素都是函数指针类型.eg: (此代码链接:http://t.csdnimg.cn/ClJmb.也可以在我发布博客中找到) 2、指向函数指针数组的指针 1、引入 3、回调函数 1、含义:就是一个通过…

Pixel 手机上连接提示受阻,无法上网-解决方法

命令行中输入 adb shell settings delete global captive_portal_https_urladb shell settings delete global captive_portal_http_url输入服务器信息 adb shell settings put global captive_portal_http_url http://connect.rom.miui.com/generate_204adb shell settings …

package.java文件的作用

你查看springboot的源码,有很多类都有这个文件,在idea不能创建,因为不支持这种命名,只能用记事本创建后复制都项目中。 主要应用是给类添加正常,或者把公用的注解都放到这里,常量不合适,作用范…

0.6V30A的降压开关稳压器IC解决方案上哪找?NCP3230MNTXG了解一下

降压开关稳压器IC是一种常见的电源管理器件,具有以下几个优势: 高效性:降压开关稳压器IC采用了开关调节的方式,能够实现高效的电能转换。相比传统的线性稳压器,它的能效更高,能够减少功耗和热量产生。 小尺…

力扣题目 19:删除链表的倒数第N个节点 【python】

👤作者介绍:10年大厂数据\经营分析经验,现任大厂数据部门负责人。 会一些的技术:数据分析、算法、SQL、大数据相关、python 欢迎加入社区: 码上找工作http://t.csdnimg.cn/Q59WX 作者专栏每日更新: LeetCod…

Redis中的集群(六)

集群 ASK错误 在进行重新分片期间,源节点向目标节点迁移一个槽的过程中,可能会出现这样一种情况:属于被迁移槽的一部分键值对保存在源节点里面,而另一部分键值对则保存在目标节点里面。当客户端向源节点发送一个与数据库有关的命令&#xf…

Linux使用宝塔面板部署Discuz结合内网穿透实现公网访问本地论坛

文章目录 前言1.安装基础环境2.一键部署Discuz3.安装cpolar工具4.配置域名访问Discuz5.固定域名公网地址6.配置Discuz论坛 前言 Crossday Discuz! Board(以下简称 Discuz!)是一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上&a…

基于Linux C++多线程服务器 + Qt上位机开发 + STM32 + 8266WIFI的智慧无人超市

前言 针对传统超市购物车结账排队时间长、付款效率低的问题,提出了一种更符合现代社会人们购物方式-基于RFID的自助收银系统。习惯了快节奏生活的人们都会选择自助收银机结账,理由显而易见:自助收银机结账很方便,几乎不用排队&am…

MySQL高级详解

文章目录 约束概述分类主键约束概述特点定义及删除主键自增 唯一约束作用语法 非空约束作用语法 面试题:非空唯一约束与主键约束有什么区别默认值约束作用语法 总结 表关系及外键约束表关系概述分类一对多关系表设计外键字段设计原则 多对多关系表设定设计原则 一对…

Qt:窗口、按钮类、行编辑器、标签类

作业&#xff1a;QQ登录界面 mywidget.h #ifndef MYWIDGET_H #define MYWIDGET_H#include <QWidget> #include <QIcon> #include<QMovie> #include <QLabel> #include <QPushButton> #include <QLineEdit> class MyWidget : public QWid…

java: 警告: 源发行版 17 需要目标发行版 17,java17 无效的目标发行

注意&#xff1a;下述方法经使用后仍不能解决&#xff0c;请挨个返回各个步骤&#xff0c;查看是否真正修改过来。因为网络或 其他问题&#xff0c;可能有缓存。【多修改统一几次&#xff0c;一定会成功&#xff0c;亲测】 一、出现错误场景 场景&#xff1a;启动类是&#x…

jenkins 启动linux节点时 控制台中文显示问号乱码

新增一个jenkins节点时&#xff0c;遇到了控制台中文输出问号的问题。 网上各种配置jenkins的全局变量&#xff0c;都不行。 最终是 节点列表 ->对应节点 -> 启动方式 -> 高级 添加JVM选项 -Dfile.encodingUTF-8

电商技术揭秘十九:电商平台的智能化与自动化技术

相关系列文章 电商技术揭秘一&#xff1a;电商架构设计与核心技术 电商技术揭秘二&#xff1a;电商平台推荐系统的实现与优化 电商技术揭秘三&#xff1a;电商平台的支付与结算系统 电商技术揭秘四&#xff1a;电商平台的物流管理系统 电商技术揭秘五&#xff1a;电商平台…

[Kubernetes[K8S]集群:master主节点初始化]:通过Calico和Coredns网络插件方式安装

文章目录 操作流程&#xff1a;前置&#xff1a;Docker和K8S安装版本匹配查看0.1&#xff1a;安装指定docker版本 **[1 — 7] ** [ 配置K8S主从集群前置准备操作 ]一&#xff1a;主节点操作 查看主机域名->编辑域名->域名配置二&#xff1a;安装自动填充&#xff0c;虚拟…

libcurl 简单实用

LibCurl是一个开源的免费的多协议数据传输开源库&#xff0c;该框架具备跨平台性&#xff0c;开源免费&#xff0c;并提供了包括HTTP、FTP、SMTP、POP3等协议的功能&#xff0c;使用libcurl可以方便地进行网络数据传输操作&#xff0c;如发送HTTP请求、下载文件、发送电子邮件等…

TSINGSEE青犀边缘计算AI智能分析网关V4客流统计算法的配置步骤及使用

TSINGSEE青犀AI智能分析网关V4内置了近40种AI算法模型&#xff0c;支持对接入的视频图像进行人、车、物、行为、烟火等实时检测分析&#xff0c;上报识别结果&#xff0c;并能进行语音告警播放。硬件支持RTSP、GB28181协议、以及厂家私有协议接入&#xff0c;可兼容市面上常见的…