Python字符串常规操作小结
一、前言
在Python开发的过程中,为了实现某项功能,经常需要对某些字符串进行特殊的处理,如拼接字符串、截取字符串、格式化字符串等。下面将对Python中常用字符串操作方法进行介绍。
二、拼接字符串
在使用“+”运算符可完成对多个字符串的拼接,“+”运算符可以连接多个字符串并产生一个字符串对象。
例如,定义两个字符串,一个保存英文版的名言,另一个用于保存中文版的名言,然后使用“+”运算符进行拼接,代码如下:
|
1 2 3 |
|
运行结果如下:
字符串不允许与其他类型的数据拼接,例如,使用下面代码,字符串与数值相拼接,将产生异常。
|
1 2 3 4 5 |
|
解决该问题,可以将整个数转换为字符串。将正数转换为字符串可以用str()函数。修改后的代码如下:
|
1 2 3 4 5 |
|
运行上面代码,结果如下:
三、计算字符串的长度
由于不同的字符串所占字节不同,所以要计算字符串的长度,需要先了解个字符串所占的字节数。在Python中,数字、英文、小数点、下划线和空格占一个字节;一个汉字可以会占2~4个字节,占几个字节取决于采用的编码。
在Python中,提供了len()函数计算字符串的长度。语法格式如下:
|
1 |
|
其中,string用于指定要统计的字符串。
例如:定义一个字符串,内容为“人生苦短,我用Python”,然后用len()函数计算该字符串的长度,代码如下:
|
1 2 3 4 5 |
|
执行上述代码显示为“13”
在实际开发时,有时需要获取字符串所占的字节数,即如果采用UTF-8编码,汉字占3个字节,采用GBK或者GB2312时,汉字占两个字节,可以使用encode()方法进行编码后再进行获取。
|
1 2 3 4 5 |
|
运行代码结果如下:
如果要获取采用GBK编码的字符串的长度,可以使用下列代码:
|
1 2 3 4 5 |
|
运行代码结果如下:
四、截取字符串
由于字符串也属于序列,所以要截取字符串,可以采取切片来实现。通过切片的方式截取字符串的语法格式如下:
|
1 |
|
参数说明:
- string:表示要截取的字符串
- start:表示要截取的第一个字符的索引(包括该字符),如果不指定,则默认为“0”
- end:示要截取的后一个字符的索引(不包括该字符),如果不指定,则默认为字符串的长度
- step:表示切片的步长,如果省略,则默认为“1”,当省略步长时,最后一个冒号可以省略
定义一个字符,然后截取不同长度的子字符,代码如下:
|
1 2 3 4 5 6 7 8 |
|
运行结果如下:
在进行字符串截取的时候,如果指定的索引不存在,则会抛出异常,如下图所示:
要解决该问题,可以使用try…except语句抛出异常,代码如下:
|
1 2 3 4 5 |
|
运行结果如下:
五、分隔字符串
在Python中,字符串对象提供了分隔字符串的方法,分隔字符串是把字符串分隔为列表。
字符串对象的split()方法可以实现分割,split()方法的语法格式如下:
|
1 |
|
参数说明:
- str:表示要进行分割的字符串。
- sep:用于指定分割符,可以包含多个字符,默认为None,即所有空字符(包括空格、换行“\n”、制表符“\t”等)
- maxsplit:可选参数,用于指定分割的次数,如果不指定或者为-1,则分割次数没有限制,否则返回结果列表的元素个数最多为maxsplit+1
- 返回值:分隔后的字符串列表
更多推荐



所有评论(0)