Python知识点精汇!字符串:定义、截取(索引)和其内置函数
目录
一、字符串的定义
二、字符串的截取
1.截取干啥的
2.怎么用截取
3.打印多次
4.两个字符串拼接在一起
三、字符串内置函数
1.查询函数:
(1)find(str,start,end)
(2)index(str,start,end)
2.大小写转换函数:
(1)upper()
(2)lower()
(3)swapcase()
(4)capitalize()
(5)title()
3.分割字符串函数
(1)split(x,y)
(2)rsplit(x,y)
(3)splitlines()
(4)partition(x)
(5)rpartition(x)
4.合并与替换
(1)join(str)
(2)replace(old,new,max)
(3)format(x1,x2,……)
5.字符串的比较
(1)max(str)
(2)min(str)
(3)ord(str)
(4)chr(原始值)
6.字符串计数
(1)count(str,start,end)
(2)len(str)
7.判断开头结尾字符串
(1)startswith(x)
(2)endswith(x)
8.去掉两端多余字符
(1)lstrip(chars)
(2)rlstrip(chars)
(3)strip(chars)
9.字符串检测函数
(1)isalnum()
(2)islower()
(3)isupper()
一、字符串的定义
标准解释:字符串是一系列字符的有序集合。字符可以是字母、数字、符号、空格等。字符串的长度是其包含的字符数量。在编程中,字符串通常用引号括起来。
简单来说,字符串就是被单引号和双引号括住的东西。
例子:1是整数型的,而“1”就会变成字符串类型的1
二、字符串的截取
1.截取干啥的
比如,我们有字符串类型变量a=“123一二三;;;”
如果我们想输出其中的一部分,比如输出:23一
那么就会用到截取的知识。
2.怎么用截取
首先,我们既然想输出指定部分,那么就要先给它内部编个号,然后我们告诉计算机编号几到几,它就可以输出了。
具体的编号规则如下:
正向索引:第一个是0,第二个是1,以此类推……
反向索引:最后一个是-1,倒数第二个是-2,以此类推……
我们也可以借着下图来理解,定义字符串“Runoob”
正向索引和反向索引,随便用哪个都行,当然混着用也是可以的。
具体的格式如下:
a="12三四56" #假设你定义了字符串a
#输出第二个到第四个字符
print(a[1:4])
有人可能问了,第四个字符不是到3吗,怎么成4了?
这是因为, [ ] 中尊崇“左闭右开”原则。所以[1:4]相当于“大于等于编号1小于编号4”,就是字符“第2个到第4个了”,即最后边它是不包括的, 所以你要多加一位喽。(所以在反向索引时,也要尤其注意哦)
我们来看一看具体示例:

新问题:如果想输出从第2个一直到尾呢
我们只需要[ :]的后一个位置空着就行,如下:

同理,如果是从头开始,就可以把最前面的位置空着就行了。
3.打印多次
比如连续打印两次,加上“*2”即可,代码如下:
a="123天气真好!!"
print(a*2)
系统输出:

4.两个字符串拼接在一起
比如我们想在字符串a的后面加上点字,写个“+”然后写字符串就行,代码如下:
a="123天气真好!!"
print(a+"心情真好。")
系统输出

三、字符串内置函数
1.查询函数:
(1)find(str,start,end)
说明:
从编号start开始,一直到编号end结束,来查找str是否在字符串中,如果在,则输出str的编号位置,如果不在则输出-1
示例代码:
a="最近真的好忙,好郁闷!!"
b=a.find("忙",1,3) #查找“忙”是不是在第2个元素到第3个元素之间
c=a.find("忙",1,7) #查找“忙”是不是在第2个元素到第7个元素之间
print(b)
print(c)
系统输出:

注:这里的索引规则,同第二部分一样。
另外,如果你嫌写b和c麻烦,其实可以直接写成:
a="最近真的好忙,好郁闷!!"
print(a.find("忙",1,3))
print(a.find("忙",1,7))
(2)index(str,start,end)
唯一与find不同的是,find找不到会返回-1,而index找不到会报错
2.大小写转换函数:
(1)upper()
功能:将所有元素转换为大写

(注:a字符串的括号可以不加)
(2)lower()
功能:将所有元素转换为小写

(3)swapcase()
功能:将大写变成小写,将小写变成大写

(4)capitalize()
功能:第一个字符大写,其余小写

(5)title()
功能:每个单词首字母大写,其余小写

3.分割字符串函数
(1)split(x,y)
解释:从头开始,在字符串中寻找x,找到后,删除掉x,然后将x两侧的字符,分割成两部分字符串输出。y的含义是,寻找几次x。
如果y是1,那么从左开始,第一次找到后则停止,如果不填y,则默认一直查找。
示例代码:
a="mynameisA.sir"
print(a.split("yn"))
print(a.split("i"))
print(a.split("i",1))
系统输出:

(2)rsplit(x,y)
与split(x,y)类似,只不过rsplit(x,y)是从右侧开始查找
(3)splitlines()
功能:针对多行的字符串分割,最后变成一个列表
示例:

注:splitlines(a)中的a可以不写 ,并且不加a的话,就不会出现\n了
注意:这里连用了三个双引号,是为了能够使得字符串分行书写
(4)partition(x)
功能:从做开始,找第一个x,并以x为界,分为三部分,x左一部分,x一部分,x右一部分

注:返回的是元组
(5)rpartition(x)
与partition(x)相同,只不过从右边开始找
4.合并与替换
(1)join(str)
格式:
b=“。”.join([a1,a2,a3])
解释:
将a1,a2,a3三个变量。并用“。”连接起来
示例:

当然,如果是在 每一个元素都插入的话,如下图格式:

(2)replace(old,new,max)
解释:
将字符串中的old字符,替换成new,替换次数为max次
示例:

(3)format(x1,x2,……)
首先在原字符串中有 {} ,然后会被x1,x2依次替换
示例:

注:{}里不能有东西哦
5.字符串的比较
(1)max(str)
功能:返回最大的字母
示例:

(2)min(str)
功能:返回最小字母
原理同max函数
(3)ord(str)
功能:将指定字符转换为原始值
print(ord("a"))
系统输出:97
补充知识:原始值
在计算机中有一种编码,叫做ASCII ,在这个编码系统里,每一个字符都有对应的数字值,就叫原始值
(4)chr(原始值)
功能:将原始值转换为对应字符
print(chr("97"))
系统输出:a
6.字符串计数
(1)count(str,start,end)
解释:在字符串start到end范围内,查找str出现次数,并返回

这里的start,end同样遵循左闭右开原则
(2)len(str)
功能:计算字符串内字符个数
示例:

7.判断开头结尾字符串
(1)startswith(x)
功能:判断字符串是否以x开头,若是则返回True

(2)endswith(x)
功:判断字符串是否以x结尾,若是则返回True
原理同startswith(x)
8.去掉两端多余字符
(1)lstrip(chars)
功能:去掉左边的字符chars,如果一直匹配,则一直去除,如果遇到不匹配的则立即停止
示例:
a = "aabbcc"
b=a.lstrip("a")
print(b) #输出bbcca = "aabbcc"
b=a.lstrip("ab")
print(b) #输出cca = "aabbcc"
b=a.lstrip("abc")
print(b) #输出为空白
(2)rlstrip(chars)
从右边开始匹配,原理同lstrip(chars)
(3)strip(chars)
从左右两边同时匹配,原理同lstrip(chars)
9.字符串检测函数
(1)isalnum()
功能:判断字符串是否只包含数字和字母,若是则输出True
示例:

(2)islower()
功能:检测字符串是否都是小写字母
示例:

(3)isupper()
功能:检测字符串是否都是大写字母
原理同islower()
以上就是全部内容拉~~
相关文章:
Python知识点精汇!字符串:定义、截取(索引)和其内置函数
目录 一、字符串的定义 二、字符串的截取 1.截取干啥的 2.怎么用截取 3.打印多次 4.两个字符串拼接在一起 三、字符串内置函数 1.查询函数: (1)find(str,start,end) (2)index(str,start,end&#…...
【CV】头盔检测区域入侵项目
文章目录 🌕项目和数据下载🌙安全帽佩戴数据集🌕收集数据数据🌕wbem格式视频转avi或者mp4🌕跑通区域入侵🌙多边形标注工具下载🌙使用Python脚本打开视频获取一张用来标注的图片🌙打开labelme标注一个多边行🌙程序可以识别的标注json格式🌙修改代码读取Json…...
大数据应用开发——实时数据处理(一)
前言 大数据应用开发——实时数据采集 大数据应用开发——实时数据处理 Flink完成Kafka中的数据消费,将数据分发至Kafka的dwd层中 并在HBase中进行备份 大数据应用开发——数据可视化 hadoop,zookeeper,kafka,flink要开启 目…...
Wireshark中的length栏位
注:Ethernet II的最小data length为46,如果小于,会补全到46. 1.指定网卡抓取的,链路为ethernet。 IPv4 Ethernet II 长度为 14 bytes - L1ipv4 header中的length包括header和payload的总长度 - L2wireshark中length表示抓取的pac…...
IDEA中创建多模块项目步骤
步骤 1:使用 Spring Initializr 创建父项目 打开IntelliJ IDEA,选择 File > New > Project。选择 Spring Initializr 并配置项目信息: Group ID:例如 com.aqian,用于项目的组织标识。Artifact ID:例…...
深度学习笔记13-卷积神经网络1
1.卷积神经网络 卷积神经网络(CNN),它是由多个卷积层、池化层和全连接层构成的前馈神经网络。在卷积神经网络中,包含了可训练的卷积核,这使得卷积神经网络具有强大的表征学习能力。卷积神经网络通过卷积层和池化层进行…...
【新华妙笔-注册/登录安全分析报告-无验证方式导致安全隐患】
前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 1. 暴力破解密码,造成用户信息泄露 2. 短信盗刷的安全问题,影响业务及导致用户投诉 3. 带来经济损失,尤其是后付费客户,风险巨大,造…...
STM32电源管理—实现低功耗
注: 本文是学习野火的指南针开发板过程的学习笔记,可能有误,详细请看B站野火官方配套视频教程(这个教程真的讲的很详细,请给官方三连吧) 在响应绿色发展的同时,在很多应用场合中都对电子设备的功…...
【链路层】空口数据包详解(4):数据物理通道协议数据单元(PDU)
目录 一、概述 1.1. 头部(Header)结构 1.2. MIC字段的情况说明 1.3. 有效载荷(Payload)格式与LLID字段的关联 二、LL Data PDU 2.1. 定义与用途 2.2. 头部字段设置 2.3. 空PDU(Empty PDU ) 2.4. 数…...
数学分组求偶数和
问题描述 小M面对一组从 1 到 9 的数字,这些数字被分成多个小组,并从每个小组中选择一个数字组成一个新的数。目标是使得这个新数的各位数字之和为偶数。任务是计算出有多少种不同的分组和选择方法可以达到这一目标。 numbers: 一个由多个整数字符串组…...
机器学习基础02_特征工程
目录 一、概念 二、API 三、DictVectorize字典列表特征提取 四、CountVectorize文本特征提取 五、TF-IDF文本1特征词的重要程度特征提取 六、无量纲化预处理 1、MinMaxScaler 归一化 2、StandardScaler 标准化 七、特征降维 1、特征选择 VarianceThreshold 底方差…...
CSS Modules中的 :global
最近写需求遇到如下代码,我们来分析一番: .medicine-bot {:global(.cosd-site-vcard-card) {margin-top: -3px;}:global(.cosd-site-vcard-title-text) {font-size: var(--cos-text-headline-sm);}:global(.cosd-site-vcard-button) {background-color: …...
linux病毒编写+vim shell编程
学习视频来自B站UP主泷羽sec,如涉及侵权马上删除文章 感谢泷羽sec 团队的教学 请一定遵循《网络空间安全法》!!! Linux目录介绍 /bin 二进制可执行文件(kali里面是工具一些文件)/etc 系统的管理和配置文…...
WinDefender Weaker
PPL Windows Vista / Server 2008引入 了受保护进程的概念,其目的不是保护您的数据或凭据。其最初目标是保护媒体内容并符合DRM (数字版权管理)要求。Microsoft开发了此机制,以便您的媒体播放器可以读取例如蓝光,同时…...
智能工厂的设计软件 为了监管控一体化的全能Supervisor 的监督学习 之 序5 架构for认知系统 总述 (架构全图)
本文提要 本文讨论的“智能工厂的设计软件” for认知系统的架构全图 ,这有别于前面所说的“智能工厂的设计软件”的“全景图”。两者在内容和侧重点上有所不同,但它们共同构成了对智能工厂设计软件的全面描述。 全景图是对智能工厂设计软件的整体概览&…...
vmware集群 vSAN HCL 数据库
HCL数据库升级 https://partnerweb.vmware.com/service/vsan/all.json VSAN版本目录升级 https://vcsa.vmware.com/ph/api/v1/results?deploymentId2d02e861-7e93-4954-9a73-b08692a330d1&collectorIdVsanCloudHealth.6_5&objectId0c3e9009-ba5d-4e5f6-bae8-f25ec5…...
人工智能引发直播革命:AI 技术塑造无人直播全新体验
在数字化浪潮席卷全球的今天,人工智能(AI)技术以其无与伦比的速度和广度,正深刻地改变着各行各业的面貌。其中,直播行业作为新媒体时代的宠儿,也迎来了由AI技术引领的颠覆性变革。这场由人工智能引发的直播…...
数据研发基础 | 什么是流批一体
流批一体的概念是可能出现在大厂的面试题中的,虽然就算大厂实习也没机会实操这样的高级操作,学一点概念,面试多少是能说上一两句的。大致就是希望一套代码能同时在批处理和流处理中运行(同时做离线计算和实时计算)。下…...
《Python网络安全项目实战》项目6 编写密码工具程序
《Python网络安全项目实战》项目6 编写密码工具程序 项目6 编写密码工具程序任务6.1 猜数字游戏任务描述任务分析任务实施6.1.1 编写基本的猜数字程序6.1.3 测试并修改程序6.1.4 给程序增加注释 任务拓展任务实施6.2.1 生成随机密码6.2.4 菜单功能 相关知识1. 密码字典2. 密码字…...
现代C++HTTP框架cinatra
文章目录 cinatra简介主要特点 快速上手编译器版本要求使用指南快速示例 项目地址 cinatra简介 cinatra是一个基于C20协程的高性能HTTP框架,它的目标是提供一个快速开发的C HTTP框架解决方案 它不仅支持HTTP/1.1和1.0,还支持SSL和WebSocket,…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
