【无为则无心&Python基础】— 27.Python序列--字
2、修改
所谓修改字符串,指的就是通过函数的形式修改字符串中的数据。(字符串修改的方法很多,我们只讲解一下最常用的。)
@1、replace( )
方法
replace( )
:替换
语法
字符串序列.replace(旧子串, 新子串, 替换次数)
注意:替换次数如果查出子串出现次数,则替换次数为该子串出现次数。
快速体验
mystr = "hello and String and python and world"
# 1.把字符串中的and全部换成he,查出几次,替换几次。
# 结果:hello he String he python he world
new_str = mystr.replace('and', 'he')
print(new_str)
# 2。替换次数如果超出子串出现的次数,表示替换所有子串
# 结果:hello he String he python he world
new_str = mystr.replace('and', 'he', 10)
print(new_str)
# 3、查出的子串中,只替换前两个
# 结果:hello he String he Python and world
new_str = mystr.replace('and', 'he', 2)
print(new_str)
注意(重要)
调用了replace( )
方法后,发现原有字符串的数据并没有做到修改,修改后的数据是replace( )
方法的返回值,说明字符串是不可变数据类型。(前边有做简单的讲解,文档2中四--1--(3))
同时也说明:说明replace( )
方法有返回值,返回值是修改后的字符串。
应该所有关于字符串修改的函数,都有返回值,且返回修改后的字符串。
总结:数据按照是否能直接修改分为可变类型数据和不可变类型数据两种。字符串类型的数据修改的时候不能改变原有字符串,属于不能直接修改数据的类型即是不可变类型。
@2.split( )
方法
split( )
方法:按照指定字符分割字符串。返回一个列表,并丢失字符串中包含的分割字符。
语法
字符串序列.split(分割字符, num)
注意:
num
表示的是分割字符出现的次数,即将来返回数据个数为num+1
个。
快速体验
mystr = "hello and String and python and world"
# 1.以and为分割符,分割字符串,出现的分割全部分割。
# 结果:['hello ', ' String ', ' python ', ' world']
new_str = mystr.split('and')
print(new_str)
# 2.只把前两次出现的分割符,进行字符串的分割
# 结果:['hello ', ' String ', ' python and world']
new_str = mystr.split('and', 2)
print(new_str)
注意:如果分割字符是原有字符串中的子串,分割后则丢失该子串。
@3.join( )
方法
join( )
方法:用一个字符或子串合并字符串,即将多个字符串合并为一个新的字符串。
语法
字符或子串.join(多字符串组成的序列)
快速体验
# 合并列表里面的字符串为一个大的字符串
# 结果:aa...bb...cc
mylist = ['aa', 'bb', 'cc']
print('...'.join(mylist))
# 结果:hello world hello python
list1 = ['hello', 'world', 'hello', 'python']
print(' '.join(list1))
@4.capitalize()
方法
capitalize( )
方法:将字符串第一个字符转换成大写。
"""
下面结果可以看到两点
1.字符串的第一个字符变成大写了。
2.除了首字符外,其他字符如有大写,都变成小写。
"""
# 结果:Life is short,you need python。
mystr = "life is short,you need Python。"
new_str = mystr.capitalize()
print(new_str)
注意:
capitalize( )
方法转换后,只字符串第一个字符大写,其他的字符全都小写。
@5.title( )
方法
title( )
方法:将字符串每个单词首字母转换成大写。
# 将字符串中的每个单词的首字母都转换成大写。
# 如果单词的首字母原本就是大写,保持不变。
# 结果:Life Is Short,You Need Python。
mystr = "life is short,you need Python。"
new_str = mystr.title()
print(new_str)
@6.lower( )
方法
lower( )
方法:将字符串中大写转小写。
# 把字符串变成全小写。
# 结果:life is short,you need python。
mystr = "life is short,You Need Python。"
new_str = mystr.lower()
print(new_str)
@7.upper( )
方法
upper( )
方法:将字符串中小写转大写。
# 把字符串变成全大写。
# 结果:LIFE IS SHORT,YOU NEED PYTHON。
mystr = "life is short,You Need Python。"
new_str = mystr.upper()
print(new_str)
@8.lstrip( )
方法
lstrip( )
方法:删除字符串左侧空白字符。
mystr = " Life is short,you need Python。 "
new_str = mystr.lstrip()
print(new_str)
@9.rstrip( )
方法
rstrip( )
方法:删除字符串右侧空白字符。
mystr = " Life is short,you need Python。 "
new_str = mystr.rstrip()
print(new_str)
@10.strip( )
方法
strip( )
方法:删除字符串两侧空白字符。
mystr = " Life is short,you need Python。 "
new_str = mystr.strip()
print(new_str)
@11.ljust( )
方法
ljust( )
方法:返回一个原字符串左对齐的字符串,并使用指定字符(默认空格)填充至对应长度的新字符串。
语法
字符串序列.ljust(长度, 填充字符)
示例
# 输出结果:Pyhton....
mystr = "Pyhton"
new_str = mystr.ljust(10 , ".")
print(new_str)
@12.rjust( )
方法
rjust( )
方法:返回一个原字符串右对齐的字符串,并使用指定字符(默认空格)填充至对应长度的新字符串。
语法和ljust( )
方法相同。
示例
# 字符串序列.rjust(长度, 填充字符)
# 输出结果:....Pyhton
mystr = "Pyhton"
new_str = mystr.rjust(10 , ".")
print(new_str)
@13.center( )
方法
center( )
方法:返回一个原字符串居中对齐的字符串,并使用指定字符(默认空格)填充至对应长度的新字符串。
语法和ljust( )
方法相同。
示例
# 字符串序列.center(长度, 填充字符)
# 输出结果:..Pyhton..
mystr = "Pyhton"
new_str = mystr.center(10 , ".")
print(new_str)
"""
有的时候可能不是绝对居中,
补充字符数可能是奇数,
调整长度即可让补充字符数变成偶数,
来达到绝对居中效果。
"""