今天和白月黑羽一起学习Python3教程中对象的方法以及string类型数据对象的常见方法
什么是对象的方法
前面我们已经学习过了一些类型的对象,比如整数类型对象、字符串类型对象、列表类型对象、元组类型的对象等等。
对象不仅有名字,也是有方法(英文叫method)的。
前面我们学过函数, 对象的方法其实可以看成是对象所拥有的函数。
也就是说 这个方法,是属于这个对象的函数
如何调用
调用对象的方法,和调用函数差不多,只要在前面加上所属对象和一个点
比如:
var1 = [1,2,3,4,5,6,7]var1.reverse()print(var1)
这里, reverse就是列表对象的一个方法,该方法将列表元素倒过来。
var1.reverse() 语句就会将列表变量var1 里面的元素倒过来存放。
运行结果就是 var1就变成了 [7, 6, 5, 4, 3, 2, 1]
对象的方法是和这个对象类型紧密相关的。
对象是什么类型,就决定了对象有哪些方法。
字符串有字符串的方法,列表有列表的方法,元组有元组的方法。
字符串的方法
字符串对象就有很多方法,用来执行和这个字符串相关的操作
count
count 方法可以返回字符串对象包含了多少个参数指定的字符串
# 调用字符串的count 方法,这里返回2,# 表示该字符串包含了两个 '我们''我们今天不去上学,我们去踢足球'.count('我们')
find
find 方法 会在字符串中查找 参数 子字符串,并返回该 参数字符串 在其中第一个出现的位置索引
str1 = '我们今天不去上学,我们去踢足球'# 返回 0 , str1字符串中有两个 '我们'# find返回的是第一个 '我们' 的索引 0pos1 = str1.find('我们')
find 方法 的第二个参数,用来指定查找字符串范围,比如
str1 = '我们今天不去上学,我们去踢足球'# 第2个参数 5, 表示从 索引 5 的位置开始往后查找# 返回的是后面 我们 的索引 9pos1 = str1.find('我们',5)
split
split 是我们常用的方法,经常用来从字符串中截取出我们想要的信息。
split 方法以参数字符串为分割符,将字符串 切割为多个 字符串,作为元素存入一个列表,并返回这个列表。
看看下面的例子
str1 = '小张:79 | 小李:88 | 小赵:83'pos1 = str1.split('|')
这里 split方法指定用 | 作为源字符串str1的分割符, 这样 原来的字符串 就被分成了 3个部分
小张:79小李:88小赵:83
最红将这个三个字符串存入一个列表中返回,返回的结果就是
['小张:79 ',' 小李:88 ',' 小赵:83']
大家要注意,分隔符本身在切割后,会被丢弃掉,所以切割后的字符串中不会有分隔符。
可能有的读者会注意到上面的3个字符串不对齐,这不是我们的笔误。
原来的字符串,被切开后,分隔符前面有的空格字符,会保留下来。
小张 前面没有空格,所以切割后,切割出来的结果就没有空格。
而 小李 和 小赵 前面是有空格的,切割出来的结果就有空格
不一定非要用 竖线分割, 我们可以指定任何其他的分隔符来分割字符串,比如
'小张:79 | 小李:88 | 小赵:83'.split('小赵')
这样就是以 小赵 这个字符串为界 ,分割。返回结果如下
['小张:79 | 小李:88 | ',':83']
join
join 方法和 split方法正好相反
split 是将字符串, 以 某字符串 为界,切割成多个字符串, 存入列表
join 是将列表中的字符串元素 以某字符串为连接符,连接为一个字符串
比如
'|'.join(['小张:79 ',' 小李:88 ',' 小赵:83'])
返回的就是字符串 小张:79 | 小李:88 | 小赵:83 。
相当于把参数列表里面的字符串连接在一起, 中间加上指定的连接符 |
再比如
'小赵'.join(['小张:79 | 小李:88 | ',':83'])返回的就是字符串 '小张:79 | 小李:88 | 小赵:83'
相当于把参数列表里面的字符串连接在一起, 中间加上指定的连接符 小赵
strip 、 lstrip 、 rstrip
strip方法可以将 字符串前面和后面的空格删除,但是不会删除字符串中间的空格
比如
' 小 李:88 '.strip() 返回的就是 '小 李:88',去掉了前后的空格,但是中间的空格不会去掉
lstrip方法 将 字符串前面 (左边) 的空格删除,但是不会删除字符串中间和右边的空格
比如
' 小 李:88 '.lstrip() 返回的就是 '小 李:88 '
rstrip方法 将 字符串后面 (右边) 的空格删除,但是不会删除字符串中间和左边的空格
比如
' 小 李:88 '.rstrip() 返回的就是 ' 小 李:88'
replace
replace 也是常用的方法,用来替换字符串里面所有指定的 子字符串 为另一个 字符串
比如
str1 = '我们今天不去上学,我们去踢足球'str1 = str1.replace('我们', '他们')
上面的replace方法就会把字符串中所有的我们,替换成他们
结果就是 '他们今天不去上学,他们踢足球'
startswith 和 endswith
startswith 方法检查字符串是否以参数指定的字符串开头,如果是,返回True,否则返回False
endswith 方法检查字符串是否以指定的字符串结尾,如果是,返回True,否则返回False
str1 = '我们今天不去上学,我们去踢足球'str1.startswith('我们') # 返回 Truestr1.endswith('我们') # 返回 False
内容摘自: 白月黑羽教程中的对象方法
string.split方法 保留分隔符_白月黑说什么是对象的方法?以及string类型数据对象的常见方法解析...