目录
一、字符串的定义
**标准解释:**字符串是一系列字符的有序集合。字符可以是字母、数字、符号、空格等。字符串的长度是其包含的字符数量。在编程中,字符串通常用引号括起来。
简单来说,字符串就是被单引号和双引号括住的东西。
例子:1是整数型的,而"1"就会变成字符串类型的1
二、字符串的截取
1.截取干啥的
比如,我们有字符串类型变量a="123一二三;;;"
如果我们想输出其中的一部分,比如输出:23一
那么就会用到截取的知识。
2.怎么用截取
首先,我们既然想输出指定部分,那么就要先给它内部编个号,然后我们告诉计算机编号几到几,它就可以输出了。
具体的编号规则如下:
**正向索引:**第一个是0,第二个是1,以此类推......
**反向索引:**最后一个是-1,倒数第二个是-2,以此类推......
我们也可以借着下图来理解,定义字符串"Runoob"
正向索引和反向索引,随便用哪个都行,当然混着用也是可以的。
具体的格式如下:
python
a="12三四56" #假设你定义了字符串a
#输出第二个到第四个字符
print(a[1:4])
有人可能问了,第四个字符不是到3吗,怎么成4了?
这是因为, [ ] 中尊崇"左闭右开"原则。所以[1:4]相当于"大于等于 编号1小于编号4",就是字符"第2个到第4个了",即最后边它是不包括的, 所以你要多加一位喽。(所以在反向索引时,也要尤其注意哦)
我们来看一看具体示例:
新问题:如果想输出从第2个一直到尾呢
我们只需要[ :]的后一个位置空着就行,如下:
同理,如果是从头开始,就可以把最前面的位置空着就行了。
3.打印多次
比如连续打印两次,加上"*2"即可,代码如下:
python
a="123天气真好!!"
print(a*2)
系统输出:
4.两个字符串拼接在一起
比如我们想在字符串a的后面加上点字,写个"+"然后写字符串就行,代码如下:
python
a="123天气真好!!"
print(a+"心情真好。")
系统输出
三、字符串内置函数
1.查询函数:
(1)find(str,start,end)
说明:
从编号start开始,一直到编号end结束,来查找str是否在字符串中,如果在,则输出str的编号位置,如果不在则输出-1
示例代码:
python
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,则默认一直查找。
示例代码:
python
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)
格式:
python
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)
功能:将指定字符转换为原始值
python
print(ord("a"))
系统输出:97
补充知识:原始值
在计算机中有一种编码,叫做ASCII ,在这个编码系统里,每一个字符都有对应的数字值,就叫原始值
(4)chr(原始值)
功能:将原始值转换为对应字符
python
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,如果一直匹配,则一直去除,如果遇到不匹配的则立即停止
示例:
python
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()
以上就是全部内容拉~~