Python-字符串(切片操作与内建函数)

news2024/11/18 9:37:24

目录

一、字符串介绍

1、什么是字符串

2、转义字符

二、字符串的输入和输出

1、字符串输出

2、字符串输入

三、访问字符串中的值

1、字符串的存储方式

2、使用切片截取字符串

四、字符串内建函数

1、find

2、index

3、count

4、replace

5、split

6、capitalize

7、title

8、startswith

9、endswith

10、upper

11、ljust

12、rjust

13、center


一、字符串介绍

1、什么是字符串

字符串是一种表示文本的数据类型

在Python中有三种表示方式:

(1)使用单引号包含字符

(2)使用双引号包含字符(只能有一行)

(3)使用三引号包含字符(能包含多行字符串,通常用来注释)

注意:Python字符串不能被改变

比如word[0]='m'则会报错

2、转义字符

比如我们的字符串中包含了单引号,那么我们可以添加反斜杠 \' 以此来表示这是一个普通字符内容而不是字符串的结束标记。

常见的还有

换行:\n

回车:\r

反斜杠符号:\\

双引号:\"

空:\000

如果不想使用反斜杠转义特殊字符,可以在字符串前添加r,表示原始字符串:

二、字符串的输入和输出

1、字符串输出

最基本的方法是将一个值插入到一个有字符串格式符%s的字符串中:

2、字符串输入

Python提供input函数从标准输入读取一行文本,默认标准输入是键盘。

注意:不管输入的是不是字符串类型,都会转换成字符串进行保存。

三、访问字符串中的值

1、字符串的存储方式

Python中单个字符也是作为字符串使用,如果想访问字符串中的某个字符,则需要使用下标来实现。

在字符串中,每个字符都对应一个编号,并且是从0开始,依次递增1,这个编号就是下标。

使用:字符串名[下标] 这样的格式实现对字符串中某个字符的访问(特别注意是从0开始的)

看例子:

2、使用切片截取字符串

切片是指对操作对象截取其中一部分的操作,字符串、列表、元组都支持切片操作,列表和元组其实就是普通的数组。

切片操作的格式:[起始:结束:步长]

注意:切片选取的区间是左闭右开,即包含起始位但是不包含结束位。

说明:

省略第一个参数,则默认从0开始取;

省略第二个参数,则默认取到最后一位;

省略第三个参数,默认步长为1;

步长取-1时可以实现倒序输出。

四、字符串内建函数

1、find

用于检查字符串中是否包含了某个子字符串,如果包含,则返回开始的索引值,否则返回-1。

看例子:

b在字符串str中是存在的,所以返回了它的下标;z在字符串str中不存在,所以返回1。

2、index

index与find功能一样,只是当检查到不存在时会抛出异常,而不是返回-1。

3、count

用于统计字符串中某个子字符串出现的次数

如下图:统计在str字符串中s和h出现的次数

前面三个函数其实都可以指定开始和结束的位置,放在第二,第三个参数位置即可:

4、replace

用于字符串中子字符串的替换

用法:str.replace(old,new,count)

意思是将旧的字符串替换为新的字符串,count表示替换不超过count次。

比如我们将字符串str中的a替换为s,但是最多替换两次:

5、split

通过指定分隔符对字符串进行切片,返回值是分隔后的字符串列表。

用法:str.replace(分隔符,分隔次数)

默认分隔符是所有空字符,包括空格、换行(\n)、制表符(\t)等;

默认是对整个字符串进行分隔,也可以指定分隔的次数。

后面函数主要是对一些格式的调整,这里就不详细演示了,感兴趣的可以自己去了解。

6、capitalize

将字符串第一个字母变成大写。

7、title

将字符串标题化,即所有单词都以大写开始,其余字母均为小写。

8、startswith

检查字符串是否以指定子字符串开头,是则返回True,否则返回False。

9、endswith

检查字符串是否以指定子字符串结尾,是则返回True,否则返回False。

10、upper

将字符串中所有小写字母转为大写字母

11、ljust

左对齐

12、rjust

右对齐

13、center

居中

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Centos 7 Zabbix配置安装

前言 Zabbix是一款开源的网络监控和管理软件,具有高度的可扩展性和灵活性。它可以监控各种网络设备、服务器、虚拟机以及应用程序等,收集并分析性能指标,并发送警报和报告。Zabbix具有以下特点: 1. 支持多种监控方式:可…

Docker容器引擎的介绍

目录 Docker概述 容器受欢迎的原因 Docker与虚拟机的区别 Docker三个核心概念 Docker的安装 1、环境准备 2、安装依赖包 3、设置阿里云镜像源 4、安装 Docker-CE并设置为开机自动启动 Docker命令 1、查看 docker 版本信息 2、docker 信息查看 3、Docker 镜像操作命…

GoLong的学习之路(五)语法之数组

书接上回,上回书说到,循环语句,在go中循环语句的少了whlie这个关键词,但是与之for可以改这个改这个特点。并且在终止关键词中,又有标签可以方便,停止。这次说数组 文章目录 Array(数组)数组的初始化方法一方…

数据结构堆详解

[TOC]堆详解 一,堆 1.1堆的概念 堆的性质: 堆中某个节点的值总是不大于或不小于其父节点的值; 堆总是一棵完全二叉树。 1.2堆的存储模式 我们前面的文章提到过,二叉树的两种存储模式,一个是顺序存储,一…

网络第一颗

✍ 如何理解局域网和广域网? ✍ 路由器和交换机是怎样工作的? ✍ 三层交换机能不能代替路由器? -- 1.局域网 2. 广域网 -- -- 企业网络 运营商架构 数据中心架构 -- 局域网 - 内网 - 私网 -- 通过交换机连接的 转发相同IP地址段的…

NVIDIA显卡算力表--nvidia显卡算力表

参考链接:https://blog.csdn.net/qq_41070955/article/details/108269915 官方链接:https://developer.nvidia.com/cuda-gpus

电压放大器在工业领域有哪些用途

电压放大器在工业领域中有广泛的应用,其主要功能是将传感器或其他信号源的微小电压信号放大为更大幅度的电压信号,以便进行后续的信号处理、控制和监测。以下是电压放大器在工业领域中的一些常见用途: 传感器信号放大:工业生产中经…

Java 通过反射修改字符串 String 类型变量的取值而不改变字符串变量的指向

注意点 由于 JDK 8 中有关反射相关的功能自从 JDK 9 开始就已经被限制了,如:通过反射修改 String 类型变量的 value 字段(final byte[]),所以要能够使用运行此方法,需要在运行项目时,添加虚拟机(VM)选项:-…

map set 使用快速上手【C++】

目录 一,关联式容器 二,键值对 三,set 1)使用参考此文档 2)count 函数 3)multiset类 四,map 1. 模板参数介绍 2.operator[]介绍 3. multimap 英语比较好的同学可以自行查找文档 学…

springboot+avue框架开发的医院绩效考核系统全套源码

医院综合绩效核算系统全套源码 (应用案例自主版权演示) 医院绩效考核系统以医院的发展战略为导向,把科室、员工的绩效考核跟战略发展目标紧密结合,引导医院各个科室、各员工的工作目标跟医院的发展目标结合在一起,实现…

代码随想录Day26 贪心01 LeetCode T53 最大子数组和

LeetCode T53 最大子数组和 题目链接:53. 最大子数组和 - 力扣(LeetCode) 题目思路: 贪心贪的是哪里呢? 如果 -2 1 在一起,计算起点的时候,一定是从 1 开始计算,因为负数只会拉低总和,这就是贪…

VPN访问外网的原理

一.前言 许多人都用VPN翻墙,那么VPN为什么可以做到访问外网? VPN的全称叫“Virtual Private Network”意思就是虚拟私人专用网络,是专用网络的延伸,通过VPN,可以模拟点对点专用连接的方式,通过共享和公共网…

对知识蒸馏的一些理解

知识蒸馏是一种模型压缩技术,它通过从一个大模型(教师模型)中传输知识到一个小模型(学生模型)中来提高学生模型的性能,知识蒸馏也要用到真实的数据集标签。 软损失soft loss就是拿教师模型在蒸馏温度为T的…

Ai写作创作系统ChatGPT网站源码+图文搭建教程+支持GPT4.0+支持ai绘画(Midjourney)/支持OpenAI GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统AI绘画系统,支持OpenAI GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署…

map 和 set 的一起使用

map 和 set 一起使用的场景其实也蛮多的,最近业务上就遇到了。需求是这样的,一条路径(mpls中的lsp)会申请多个 id,这个 id 是独一无二的。这里很显然就就一个”一对多“的情况,合适用这个容器不保存这些信息…

【Java集合类面试九】、介绍一下HashMap的扩容机制

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:介绍一下HashMap的扩容机…

【Java集合类面试七】、 JDK7和JDK8中的HashMap有什么区别?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:JDK7和JDK8中的HashMap有…

【保姆级教程】:docker搭建MongoDB三节点副本集

容器可以理解为一个进程,镜像是把环境,组件等都配置好,运行成容器的,容器里面运行服务,也可以说是一个进程。镜像是模板,镜像是实例。 一个镜像可以创建多个实例。也就是多个容器,容器之间相互…

【已解决】vue项目之爆红红红红······

我是用npm update更新依赖的时候就开始爆红了... 这里显示是依赖问题,有多种解决方式:1,哪个依赖出问题就去提高或者降低依赖的版本;2,提高或者降低vue-cli的版本。 第一种: 我的报错信息提示eslint这个依…

Linux系统开发(1):IO多路复用

IO即输入输出,是主存和外部设备(磁盘驱动器、终端和网络)之间复制数据的过程。 IO过程 应用程序进程向操作系统发起IO调用请求;操作系统将外部设备的数据加载到内核缓冲区;操作系统将内核缓冲区的数据拷贝到进程缓冲…