Python 字符串常用方法详解 (replace,split,join,strip)


本文对字符串的常用方法。如:title,replace,split,join,strip等方法进行了较为详细的讲解。

1 字符串统一大小写方法

title方法

title方法,将字符串中相分割的单词首字母大写,其余小写。

str_a = 'abC deF'
print(str_a.title())
# ------运行结果------
# Abc Def
# ------运行结果------

upper方法

upper方法,将字符串中所有字母大写。

print(str_a.upper())
# ------运行结果------
# ABC DEF
# ------运行结果------

lowe方法

lowe方法,将字符串中所有字母小写。

print(str_a.lower())
# ------运行结果------
# abc def
# ------运行结果------

2 字符串替换方法

replace方法

replace方法,替换字符串中内容,并返回新的一个字符串对象。
再Python中字符串属于不可变对象,不能在原位修改,所以replace方法,相当于先替换原字符串部分内容,然后返回替换后的一个新的字符串对象。

语法:r_str = string.replace(__old=str,__new=str,__count= int) 参数含义:old:被替换的内容,new:替换内容,count:替换次数,默认全部替换。

str_b = '杰伦最帅,杰伦新歌什么时候出来?'
replace_all = str_b.replace('杰伦','周杰伦')
print(replace_all)
# ------运行结果------
# 周杰伦最帅,周杰伦新歌什么时候出来?
# ------运行结果------

replace_one = str_b.replace('杰伦','周杰伦',1)
print(replace_one)
# ------运行结果------
# 周杰伦最帅,杰伦新歌什么时候出来?
# ------运行结果------

你可以试着自己写一个函数来实现字符串替换的功能?

3 字符串切割与组合方法

split与join方法,字符串的分割与组合。

split 方法

split,将字符串按特定字符进行切割返回一个列表对象,如下,按空格切割字符串:

str_c = '我 是 一 个 字 符 串'
list_a = str_c.split(' ')
print(list_a)
# ------运行结果------
# ['我', '是', '一', '个', '字', '符', '串']
# ------运行结果------

join方法

join方法,用特定字符串来连接列表中的字符串
注意:列表中的对象需全部为字符串类型

str_d = ' '.join(list_a)
print(str_d)
# ------运行结果------
# 我 是 一 个 字 符 串
# ------运行结果------

split ,join方法的组合使用

利用join,split方法来实现特定格式字符串的传输。如网络通讯时只能传输字符串,不支持列表等形式内容,但又要保持数据的特定结构,就可以用以下方式来对信息进行处理。
如:有一个如下列表信息,需要将其转化为具有特定结构字符串:

先用对内层列表内容进行字符串转化,用‘?’连接

temp_list = []
for l in list_b:
    temp_str = '?'.join(l)
    temp_list.append(temp_str)
print(temp_list)
# ------运行结果------
# ['小明?18?学习', '小李?19?睡觉']
# ------运行结果------

再对外层列表进行字符串转化,用‘#’连接

message = '#'.join(temp_list)
print(message)
# ------运行结果------
# 小明?18?学习#小李?19?睡觉
# ------运行结果------

对message信息进行拆分,也分两步。第一步,获得外层的两个数据

middle_list = message.split('#')
print(middle_list)
# ------运行结果------
# ['小明?18?学习', '小李?19?睡觉']
# ------运行结果------

第二步,对内层数据进行切割

message_list = []
for l in middle_list:
    temp_list2 = l.split('?')
    message_list.append(temp_list2)
print(message_list)
# ------运行结果------
# [['小明', '18', '学习'], ['小李', '19', '睡觉']]
# ------运行结果------

以上就是利用字符串的join和split方法对列表数据进行处理的简单举例。
当你熟悉了以上方法的操作原理,和会用列表解析时,以上步骤其实可简化为:

list_c = [['大明', '22', '编程'], ['大李', '23', '吃饭']]
# 列表转为字符串
message_c = '#'.join(['?'.join(t) for t in list_c])
print(message_c)
# ------运行结果------
# 大明?22?编程#大李?23?吃饭
# ------运行结果------
# 字符串转化为列表
message_list_c = [m.split('?') for m in message_c.split('#')]
print(message_list_c)
# ------运行结果------
# [['大明', '22', '编程'], ['大李', '23', '吃饭']]
# ------运行结果------

4 清除字符串空格方法

当读取文本字符串内容,或者从gui页面获取字符串数据时,字符串首尾可能会出现空格。而这些空格对后期数据处理可能会造成一些麻烦,此时就可以用rstrip,lstrip,strip方法来去除。

rstrip方法

rstrip 去除右侧空格(末尾空格)。

str_e = ' abc def '
str_e.rstrip()

lstrip方法

lstrip 去除左侧空格(前端空格)。

str_e.lstrip()

strip方法

strip 去除两侧空格(首位空格)

str_e.strip()

以上内容为原创,未经允许,禁止转载。

猜你喜欢

转载自blog.csdn.net/zhouz92/article/details/106313521