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) #输出bbcc
a = "aabbcc"
b=a.lstrip("ab")
print(b) #输出cc
a = "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()
以上就是全部内容拉~~