七、对象的方法

所谓 对象方法 就是只属于 某个对象 的函数。

调用对象的方法和调用函数一样,只要在前面加上 所属对象.

1
2
3
4
5
6
# var1 是一个列表对象
var1 = [1,2,3,4,5,6,7]

# 列表对象都有 reverse方法
var1.reverse()
print(var1) # [7, 6, 5, 4, 3, 2, 1]

一、字符串的方法

count

count 方法:可以返回字符串对象包含了多少个 参数指定的 字符串。

第二个参数为开始位置,第三个参数为结束位置。

1
2
3
str1 = '我们今天不去上学,我们去踢足球'

print(str1.count("我们")) # 2

find

find 方法:会在字符串中查找 参数 字符串,并返回该 参数字符串 在其中 第一个 出现的位置索引。

如果字符串对象中 没有 要查找的参数字符串,就会返回 -1

第二个参数为开始位置,第三个参数为结束位置。

1
2
3
str1 = '我们今天不去上学,我们去踢足球'

print(str1.find("我们")) # 0

split、splitlines

  • split 方法:以参数字符串为 分隔符,将字符串 切割为多个 字符串,作为元素存入一个 列表 并返回这个列表,分隔符本身会被丢弃掉。
1
2
3
str1 = '小张:79 | 小李:88 | 小赵:83'

print(str1.split('|')) # ['小张:79 ', ' 小李:88 ', ' 小赵:83']
  • splitlines 方法:将字符串按 换行符 进行切割,为元素存入一个 列表 并返回这个列表。
1
2
3
4
5
6
7
str1 = '''
小王 10000元
小李 20000元
小徐 15000元
'''

print(str1.splitlines()) # ['', '小王 10000元', '小李 20000元', '小徐 15000元']

::: tip

1.splitlines 方法经常用在文件处理中,读出文件内容存入字符串,然后把每行内容依次存入列表。

:::

join

join 方法和 split 方法正好相反

json 方法:将列表中的字符串元素 以某个字符串为连接符,连接 为一个新的字符串

1
2
3
4
5
6
7
list1 = [
'小张:79 ',
' 小李:88 ',
' 小赵:83'
]

print("|".join(list1)) # 小张:79 | 小李:88 | 小赵:83

strip、lstrip、rstrip

  • strip 方法:将字符串 前后 的空格删除,但是不会删除字符串中间的空格。
1
2
3
str1 = '      你好   !   '

print(str1.strip()) # 你好 !
  • lstrip 方法:将字符串 前面(左边)的空格删除。
1
2
3
str1 = '      你好   !   '

print(str1.lstrip()) # 你好 ! .
  • rstrip 方法:将字符串 后面(右边)的空格删除。
1
2
3
str1 = '      你好   !   '

print(str1.rstrip()) # 你好 !

replace

replace 方法:用来 替换 字符串中 所有 指定的 字符。

1
2
3
str1 = '      你好   !   '

print(str1.replace(' ', '')) # 你好!

startswith、endswith

  • startswith 方法:检查字符串是否以指定的字符串 开头,如果是,则返回 True, 否则返回 False

  • endswith 方法:检查字符串是否以指定的字符串 结尾, 如果是,则返回 True,否则返回 False

    1
    2
    3
    4
    str1 = '我们今天不去上学,我们去踢足球'

    print(str1.startswith('我们')) # 返回 True
    print(str1.endswith('我们')) # 返回 False

isdigit、isalpha

  • isdigit 方法:检查字符串是否全部由 数字 构成,如果是,返回 True,否则返回 False
1
2
3
4
5
6
id='320104190109090879'

if id.isdigit():
print('是纯数字')
else:
print('不是纯数字')
  • isalpha 方法:检查字符串是否全部由 字母 构成,如果是,返回 True,否则返回 False
1
2
3
4
5
6
id2='ABCDEFG'

if id2.isalpha():
print('是纯字母')
else:
print('不是纯字母')

字符串倒序

通过 切片 [::-1] 操作可以将字符串 倒序 排列。

1
2
3
4
str1 = '字符串的倒序'

reverse = str1[::-1]
print(reverse) # 序倒的串符字

列表的方法

append

append 方法:可以在列表的 末尾 添加一个元素。

1
2
3
4
list1 = [1, 2, 3.14, 'hello']  

list1.append('你好')
print(list1) # [1, 2, 3.14, 'hello', '你好']

::: danger

appdend 方法的返回值是 None ,而不是一个新列表。

:::

insert

insert 方法:在列表 指定 的位置添加一个元素。

第一个参数为 需要插入列表位置的 下标 ,第二个参数为 需要插入的 元素

1
2
3
4
a = [1, 2, 3.14, 'python3.vip']  

a.insert(0, '你好')
print(a) # ['你好', 1, 2, 3.14, 'python3.vip']

pop

pop 方法:通过 下标 删除列表中指定的元素。当 参数为空 时,则默认删除列表最后一个元素。

pop 方法可以返回 被删除 的元素。

1
2
3
4
a = [1, 2, 3.14, 'python3.vip']  

print(a.pop()) # [1, 2, 3.14]
print(a.pop(1)) # [1, 3.14]

remove

remove 方法:根据 具体的值 删除列表中找到的 第一个 的元素。

remove 方法的返回值为 None

1
2
3
4
var1 = ['a', 'b', 'c', 'a']

var1.remove('a')
print(var1) # ['b', 'c', 'a']

reverse

reverse 方法:可以将列表进行 倒序 排列。

reverse 方法的返回值为 None

1
2
3
4
var1 = [1,2,3,4,5,6,7]

var1.reverse()
print(var1) # [7, 6, 5, 4, 3, 2, 1]

index

index 方法:可以根据 参数对象 返回在列表中的下标。

1
2
3
4
var1 = [1,2,3,4,5,6,7]

idx = var1.index(5)
print(idx) # 4

sort

sort 方法:将列表中的元素进行 排序

sort 方法的返回值为 None

1
2
3
4
numbers = [7,3,8,2,9]

numbers.sort()
print(numbers) # [2, 3, 7, 8, 9]