8章 对象方法

2020-09-13  本文已影响0人  码上版码

本章大纲

字符串的方法

列表的方法

查看python手册

对象方法概念

"""
函数:
    1- 在一个xx.py文件中(模块中) 
    2- 函数的调用 text()
对象的方法:
    1- 本质也是一个函数--设个函数不再xx.py里定义的,在class(类)定义的
    2- 调用方法不一样--对象名.方法名()

"""
# 函数
def text():
    pass
text()
# 方法的调用 对象名.方法名()
''.strip()

字符串的方法

count 计算字符串中包含的对少个置顶的字符串

>>> '123 123 789'.count('123')
2

endswith 检查字符串是否以指定的字符串结尾

>>> '123 123 789'.endswith('89')
True

startswith 检查字符串是否以指定的字符串开头

>>> '123 123 789'.startswith('123')
True
>>> '123 123 789'.startswith('133')
False

find 返回指定的子字符串(一个元素/多个连续元素)在字符串中出现的位置

# 查找--不清楚结果的找--2种结果:1-能找到;2-找不到
# 找到,返回第一个该元素出现的下标--正下标;没有找到,返回-1
print(info.find('x'))
if info.find('a') != -1:
    print('该元素存在!')
# index  --求元素的下标--该元素一定存在;该元素不存在--报错
# 如果是多个元素,第一个元素的下标
print(info.index('a'))
# 查找第二个a
print(info.find('a',info.find('a')+1))
# 扩展用法
info = 'abcdefad'
def my_find(inStr,unit):
    if unit in inStr:
        return inStr.index(unit)
    else:
        return  -1
print(my_find(info,'x'))

# 找出一个字符串里面所有这个元素所有的下标
info = 'abcdefad'
idxlist = []  # 所有该元素的下标结果
for one in range(len(info)):
    if info[one] == 'a':
        idxlist.append(one)
    print(idxlist)

isalpha 检查字符串中是否都是字符

print(info.isalpha())  # 布尔类型,返回值是True/False

Isdigit 检查字符串中是否都是数字

print(info.isdigit())  # 布尔类型,返回值是True/False

str.join 将Sequence类型的参数的元素字符串合并(连接)到一个字符串,string作为分隔符

>>> ';'.join(['i', 'like', 'play', 'football'])
'i;like;play;football'

split 将字符串分割为几个子字符串。参数为分隔符

返回结果存放在一个list对象里

>>> '123 456 789' .split(' ')
['123', '456', '789']

# pycharm示例
info1 = 'abcdef'
info2 = 'abcfedcsedfc'
print(info1.split('c'),info2.split('c'))  # c--切点,切点会被干掉

lower 将字符串里面含有大写字母的元素都会全部转为小写字母

>>> 'China'.lower()
'china'

upper 将字符串里面含有小写字母的元素都会全部转为大写字母

>>> 'China'.upper()
'CHINA'

replace 替换字符串里面指定的子字符串

# 新 替换 旧:replace('旧元素','新元素')
info3 = 'abcdaefa'
print(info3.replace('a','新'))  # 默认替换全部
print(info3.replace('a','新',1))  # 1--替换一个,从左向右
print(info3.replace('a','新',2))  # 2--替换2个,从左向右

strip 将字符串前置空格和后置空格删除,中间元素(空格)不能删除

info4 = '  abcd  aefa  '
print(info4.strip(' '))
info = 'xxabcd xaefaxx'
print(info.strip('xx'))

istrip 将字符串前置空格删除

info5 = '  abcdaefa  '
print(info5.lstrip(' '))
info = 'xxabcd xaefaxx'
print(info.lstrip('xx'))

rstrip 将字符串后置空格删除

info6 = '  abcdaefa  '
print(info6.rstrip(' '))
info = 'xxabcd xaefaxx'
print(info.rstrip('xx'))

扩展

info = '  abc def  '
# 如何去掉中间的空格?
# 方案一(推荐):
# res = info.replace(' ','')  # 空 替换 空格
# print(res)
# 方案二:
res = info.strip(' ')  # 删除前后空格
re = res.split(' ')  # 通过中间空格切片
r = ''.join(['abc', 'def'])  # 拼接切面后的列表中的字符串
print(r)  # 打印

查看python手册

mac设备安装python后手册位置:应用程序 --> Python3.6 --> Python Manuals


image.png

windows设备安装python后手册位置:程序 --> Python3.6 --> Python Manuals


image.png

通过关键子查询


image.png
上一篇下一篇

猜你喜欢

热点阅读