python字符串操作

Python023

python字符串操作,第1张

字符操作在各个计算机语言中都是比较常见的操作,下面我们对python的字符串操作做下简单介绍。

一、索引操作

字符串是由一些连续的字符组成,支持索引操作,索引位置从0开始,比如以下代码会输出’P‘字符:

二、截取子串

字符串也可以像列表那样给定起始与终止索引生成一个新的子串,比如以下代码会输出“Py”:

三、连接操作

多个字符串相加会生成一个新串,比如以下代码输出”Love Python“:

四、大小写转换

调用字符串的upper与lower方法会分别生成新的大写和小写的字符串,比如以下代码第一个输出:”I LOVE PYTHON“,第二个输出:”i love python“:

五、前后缀判断

调用字符串的startswith与endswith方法可以判断字符串是否以某个子串开关或者结尾,比如以下会分别打印出 ” python startswith py “ 和 ” python endswith on “:

六、查找与替换子串

调用find方法可以判断是否包含某个子串,比如以下代码会输出" python contains th" 和 " python doesn't contain he":

调用replace方法可以对字符串进行替换,比如要把"hello world"中的”hello“替换为”world“,以下代码会输出:”world world“

七、分隔字符串

如果我们要把一句话按空格分隔为一个一个的单词要怎么做呢,这时调用split方法即可,比如以下代码会把”hello world ni hao“转换为["hello","world","ni","hao"]:

八、清除前后字符

如果一个字符串前后有空白字符,我们需要去掉,你可以调用字符串的替换方法来做,但更简单的做法是调用strip方法,比如以下代码就会去掉两端的空白字符输出“hello python”:

九、大小写对换

如果我们需要把字符串中的小写转换为大写,大写转换为小写,那要怎么做呢,很简单,调用下swapcase就可以了,如以下代码会输出“ heLLO pYThON ”:

十、字符分类判断

有很多方法用来判断一个字符串是否属于某个分类,比如 isdigit判断是否是数字,isalpha判断是否是字母,isalnum判断是否是字母数字等,如下代码:

Python 提供了5个字符串操作符:in、空格、加号、星号和逗号。

字符串是字符的有序集合,可用in 操作符判断字符串包含关系,例如:

以空格分隔(或者没有分隔符号)的多个字符串可自动合并,例如:

加号可将多个字符串合并,例如:

星号用于将字符串复制多次以构成新的字符串,例如:

在使用逗号分隔字符串时,会创建字符串组成的元组,例如:

字符串是一个有序的集合,其中的每个字符可通过偏移量进行索引或分片。字符串中的字符按从左到右的顺序,偏移量依次为: 0 、 1 、 2 … len-1 (最后一个字符的偏移量为字符串长度减1);或者倒着排,为: -len … -2 、 -1 。索引指通过偏移量来定位字符串中的单个字符,例如:

通过索引可获得指定位置的单个字符,但不能通过索引来修改字符串。因为字符串对象不允许被修改,例如:

字符串的切片利用索引范围从字符串中获得连续的多个字符(即子字符串)。字符串切片的基本格式如下:

表示返回字符串x中从偏移量start开始,到偏移量end之前的子字符串。 start和end参数均可省略,start默认为0,end默认为字符串长度。例如:

默认情况下,切片用于返回字符串中的多个连续字符,可以通过步长参数来跳过中间的字符,其格式如下:

用这种格式切片时,会依次跳过中间step-1个字符,step默认为1。请看如下代码:

在Python中字符串是不可改变的对象(immutable),因此无法直接修改字符串的某一位字符。

一种可行的方式,是将字符串转换为列表,修改列表的元素后,在重新连接为字符串。

示例代码如下:

s = 'abcdefghijk' #原字符串l = list(s) #将字符串转换为列表,列表的每一个元素为一个字符l[1] = 'z' #修改字符串的第1个字符为znewS = ''.join(l) #将列表重新连接为字符串print(newS)#azcdefghijk #修改后的字符串