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,…...

【功耗现象】com.gorgeous.lite后台Camera 使用2小时平均电流200mA耗电量400mAh现象
现象 轻颜相机(com.gorgeous.lite)后台Camera 使用2小时平均电流200mA(BugReport提供的电流参考数据),耗电量400mAh 即耗电占比(200mA*2h)/(12.83h*52.68mA )400mAh/623mAh62% CameraOct 10 202321:03:08 - 23:03:372h16m15s859ms to 4h16m44s984msactive duration: 2h 0m 29…...

06.VSCODE:备战大项目,CMake专项配置
娇小灵活的简捷配置不过是年轻人谈情说爱的玩具,帝国大厦的构建,终归要交给CMake去母仪天下。一个没有使用 CMake 的 C 项目,就像未来世界里的一台相声表演,有了德纲却无谦,观众笑着遗憾。—— 语出《双城记》作者&…...

还是小时候味道的麻辣片
麻辣片的诞生,源于人们对辣味的热爱和对丰富口感的追求。它将辣椒的火辣、香料的浓郁和豆制品的醇厚完美结合在一起,创造出了一种令人回味无穷的美食体验。无论是在学校的小卖部、街头的小吃摊,还是超市的货架上,麻辣片都以其鲜艳…...

GaussDB部署架构
GaussDB部署架构 云数据库GaussDB管理平台(TPOPS)基于B/S架构开发,由Web、管控Service、管控Agent三部分组成,软件结构如图1所示。 图1 各节点部署架构 Web:作为用户接入子系统,用于将用户在Web下发的操作…...

遥测数据采集工具Grafana Alloy
介绍 Alloy是Grafana产品公司旗下的一款新主推遥测数据采集工具,Grafana Alloy也是一个开源OpenTelemetry收集器,具有内置 Prometheus管道并支持指标、日志、跟踪和配置文件。Alloy支持为OTEL、Prometheus、Pyroscope、Loki等服务提供许多指标、日志、跟…...

线性数据结构
数组 数组(Array) 是一种很常见的数据结构。它由相同类型的元素(element)组成,并且是使用一块连续的内存来存储。 我们直接可以利用元素的索引(index)可以计算出该元素对应的存储地址。 数组…...

【ArcGIS微课1000例】0127:计算城市之间的距离
本文讲述,在ArcGIS中,计算城市(以地级城市为例)之间的距离,效果如下图所示: 一、数据准备 加载配套实验数据包中的地级市和行政区划矢量数据(订阅专栏后,从私信查收数据),如下图所示: 二、计算距离 1. 计算邻近表 ArcGIS提供了计算点和另外点之间距离的工具:分析…...

【算法】二分
1. 找到有序区间中 x 最左边的数字的位置 static int getL(int a[], int l, int r, int x) {while (l < r) {int mid l r >> 1;if (x < a[mid]) {r mid;} else {l mid 1;}}if (a[l] ! x) return -1;return l;} 2. 找到有序区间中 x 最右边的数字的位置 stati…...

ARM CCA机密计算安全模型之简介
安全之安全(security)博客目录导读 目录 1、引言 2、问题陈述 3、CCA 安全保证 3.1 对领域所有者的安全保证 3.2 对host环境的安全保证 Arm 机密计算架构(CCA)安全模型(SM)定义了 CCA 隔离架构的安全要求和基本安全属性。这…...

蓝桥杯-洛谷刷题-day3(C++)
目录 1.忽略回车的字符串输入 i.getline() ii.逐个字符的识别再输入 2.获取绝对值abs() 3.做题时的误区 4.多个变量的某一个到达判断条件 i.max() 5.[NOIP2016 提高组] 玩具谜题 i.代码 6.逻辑上的圆圈 i.有限个数n的数组 7.数组的定义 i.动态数组 1.忽略回车的字符串输…...