python字符串常用方法 作者:马育民 • 2021-04-05 14:41 • 阅读:10045 # 说明 详细参见:https://www.runoob.com/python/python-strings.html # 查找 ```python string.find(str, beg=0, end=len(string)) ``` **参数:** - str -- 指定检索的字符串 - beg -- 开始索引,默认为0。 - end -- 结束索引,默认为字符串的长度。 **返回值:** 如果包含子字符串返回开始的索引值,否则返回-1。 ### 例子 找到这句话的书名:`李雷喜欢《水浒传》里面的武松` ``` text='李雷喜欢《水浒传》里面的武松' startPos=text.find("《") endPos=text.find("》") print(text[startPos+1:endPos]) ``` # 替换 ``` string.replace(str1, str2, num=string.count(str1)) ``` **参数:** - old -- 将被替换的子字符串。 - new -- 新字符串,用于替换old子字符串。 - max -- 可选字符串, 替换不超过 max 次 **返回值** 返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。 ### 例子 在 文本编辑器中,几乎都有替换的功能,python实现如下: ```python text="李雷喜欢干游戏、干饭" text=text.replace("李雷","韩梅梅") print(text) ``` # 拆分 ```python string.split(str="", num=string.count(str)) ``` **参数** - str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。 - num -- 分割次数。默认为 -1, 即分隔所有。 **返回值** 返回分割后的字符串列表。 ### 例子 下面的字符串由 逗号分隔的人名:`李雷,韩梅梅,lucy,lili`,实现功能:分别打印出人名 实现: ```python text="李雷,韩梅梅,lucy,lili" names=text.split(",") for item in names: print(item) ``` # 移除字符串前后的空格、tab符号 ```python string.strip([obj]) ``` **参数** - chars -- 移除字符串头尾指定的字符序列。 **返回值** 返回移除字符串头尾指定的字符生成的新字符串。 ### 例子 ```python print(" abc ".strip()) ``` # 不足位数前面填充0 ```python string.zfill(width) ``` **参数** - width -- 指定字符串的长度。原字符串右对齐,前面填充0。 **返回值** 返回指定长度的字符串。 ### 例子 生成流水号、显示金额时,不足位数,前面要补0 ``` for num in range(15): print(str(num).zfill(2)) ``` # 判断以某字符串开头 ``` str.startswith(str, beg=0,end=len(string)); ``` **参数:** - str -- 检测的字符串。 - strbeg -- 可选参数用于设置字符串检测的起始位置。 - strend -- 可选参数用于设置字符串检测的结束位置。 **返回值:** - 如果检测到字符串则返回True,否则返回False。 ### 例子 判断是否姓李 ``` name="李雷" print(name.startswith("李")) ``` # 判断以某字符串结尾 ```python string.endswith(obj, beg=0, end=len(string)) ``` **参数** - suffix -- 该参数可以是一个字符串或者是一个元素。 - start -- 字符串中的开始位置。 - end -- 字符中结束位置。 **返回值** 如果字符串含有指定的后缀返回True,否则返回False。 ### 例子 判断文件名后缀 ```python name="1.jpg" print(name.endswith(".jpg")) ``` 原文出处:http://malaoshi.top/show_1IXtF4Th0xV.html