python学习笔记05——字符串

1.字符串的创建
可以通过以下方法创建字符串:

s1 = str()
s1 = srt(“welcome”)
s2 = “”
s2=“welcome”

注意:一个字符串对象 是不可变的:一旦创建一个字符串对象出来, 那么它的内容就不会再改变。

2.对字符串的处理

2.1使用下标查看
一个字符串是一一个字符序列。可以使用下面的语法通过下标运算符访问字符串中的一个字符。

>>> s1 = "welcome"
>>> type(s1)
<class 'str'>
>>> s1
'welcome'
>>> s1[2]
'l'

2.2字符串常用方法

方法 作用
capitalize 字符串首字母大写
center 将字符串居中,center(10,*)第一个参数代表居中位置,第二个参数代表填充方式
count 统计字符串中出现该字符出现的次数
encode 将字符串转换为编码,建议使用UTF-8,在各种系统下不会乱码
decode 将编码按照编码格式进行解码,转化为字符串
endswith 判断字符串是否以传入参数结尾
startswith 判断字符串是否以传入参数开头
find 查找字符串中某个字符第一次出现的位置
rfind 查找某个字符最后一次出现的位置
index 功能同find,但是如果不存在会报错
rindex 查找最后一个
format 格式化字符串
join 用于拼接字符串,"-".join(可迭代对象)
split 字符串.split(" "),按空格分隔字符串
rsplit 同上分割字符串,从后向前
lower 将字符串转小写
upper 将字符串转大写
title 字符串中的每个单词首字母大写
strip 清除字符串两边的空格
rstrip 清除字符串右边的空格
lstrip 清除字符串左边的空格
replace 替换字符串,str.replace(旧字符串,新字符串,最大替换次数(可选))

2.3字符串的切片(截取)

2.3.1正向切片
语法:

s[start : end :step]
#从下标start开始,截取到end-1,step是步长,用来控制截取的每个字符下标的间隔,默认为1。step的正负用来控制截取反向,正值从前向后,负值表示从后向前截取。


>>> s = "welcome to python"
>>> s
'welcome to python'
>>> s[1:3]
'el'

语句中的参数可省略,有以下几种:

s[start : end ]       #省略步长,默认为1 。

>>> s
'welcome to python'
>>> s[0:5]
'welco'

s[ : end :step]    #省略start,从第一个字符,即下标0开始截取到end-1。

>>> s[:6:1]
'welcom'

s[start : :step]    #省略end,从start开始截取到最后一个字符。

>>> s[3::1]
'come to python'

s[ : :step]           #省略start与end,从第一个字符,即下标0开始,以步长step截取到最后一个字符。

>>> s[::1]		#以步长1截取
'welcome to python'
>>> s[::2]		#以步长2截取
'wloet yhn'

s[ : ]                      #截取全部

>>> s[::]
'welcome to python'

s[start : -end : 1]

>>> s[1:-2:]
'elcome to pyth'
>>> s.rfind("h")
14

注意:
当end为负数时,最后一个字符串的下标为len(s)+end-1。
2.3.2 逆向切片
逆序截取时,字符串中每个字符下标从最后一个开始向左依次为-1,-2,-3 ······ -n,逆序的用法与正向切片基本一致,但要注意“起点”和“终点”的值的设置要与截取方向保持一致:

>>> s
'welcome to python'
>>> s[-1:-7:-1]
'nohtyp'
>>> s[-1:2:-1]
'nohtyp ot emoc'

上例中,step = -1,表示反向截取,"star"与"end"的值也表示“从右向左”。
但要注意,以下例子是不行的:

>>> s
'welcome to python'
>>> s[1:-7:-1]
''
>> s[11:-2:-1]
''
>>> s[1:10:-1]
''

注意到,上述错误示例错误之处在于,“起点”start与“终点”end的“方向”与“步长”step的“截取方向”是相反的!!!

你可能感兴趣的:(python学习笔记05——字符串)