Python - 字符串常用函数详解

简介: Python - 字符串常用函数详解

str.index(sub, start=None, end=None)


作用:查看sub是否在字符串中,在的话返回索引,且只返回第一次匹配到的索引;若找不到则报错;可以指定统计的范围,[start,end) 左闭区间右开区间

str = "helloworldhhh"
print(str.index("h"))
print(str.index("hhh"))
# print(str.index("test")) 直接报语法错误:ValueError: substring not found


执行结果

0

10

 

str.find(sub, start=None, end=None)


作用:和index()一样,只是找不到不会报错,而是返回-1

str = "helloworldhhh"
print(str.find("h"))
print(str.find("hhh"))
print(str.find("test"))

执行结果

0

10

-1

 

str.count( sub, start=None, end=None)


作用:统计子字符串的数量;可以指定统计的范围,[start,end) 左闭区间右开区间

str = "hello world !!! hhh"
print(str.count(" "))
print(str.count(" ", 5, 10))

执行结果

3

1

 

 

str.split(str="", num=string.count(str))


作用:将字符串按照str分割成列表,如果参数 num 有指定值,则分隔 num+1 个子字符串

str = "hello world !!! hhh"
print(str.split(" "))
print(str.split(" ", 1))

执行结果

['hello', 'world', '!!!', 'hhh']
['hello', 'world !!! hhh']

str.strip(chars = " ")


作用:移除字符串头尾指定的字符序列chars,默认为空格


str.lstrip(chars = " ")


作用:移除字符串头部指定的字符序列chars,默认为空格


str.rstrip(chars = " ")


作用:移除字符串尾部指定的字符序列chars,默认为空格


str = "   hello  every  "
print("1", str.strip(), "1")
print(str.lstrip(), "1")
print("1", str.rstrip())
str = "!!! cool !!!"
print(str.strip("!"))


执行结果

1 hello  every 1
hello  every   1
1    hello  every
 cool 


str.replace(old,new,count= -1)


作用:把字符串中的 old(旧字符串) 替换成 new(新字符串),count代表最多替换多少次,默认-1代表全部替换

str = "hello world !!! hhh"
print(str.replace(" ", "-"))
print(str.replace(" ", "-", 1))

执行结果

hello-world-!!!-hhh
hello-world !!! hhh


str.join(sequence)


作用:将序列中的元素以指定的字符连接生成一个新的字符串

lists = ["1", "2", "3"]
tuples = ("1", "2", "3")
print("".join(lists))
print("".join(tuples))
print("-".join(lists))

执行结果

123
123
1-2-3


知识点

  • "".join(lists) 这是最常见的将列表、元组转成字符串的写法
  • 列表里面只能存放字符串元素,有其他类型的元素会报错
  • 元组也能传进去

 

str.upper()


作用:将字符串都变成大写字母


str.lower()


作用:将字符串都变成小写字母

str = "hello world !!! hhh"
print(str.upper())
print(str.lower())

执行结果

HELLO WORLD !!! HHH

hello world !!! hhh

 

str.startswith(prefix, start=None, end=None)


作用:检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False;可以指定统计的范围,[start,end) 左闭区间右开区间


str.endswith(self, suffix, start=None, end=None)


作用:相反这是结尾

str = "hello world !!! hhh"
print(str.startswith("h"))
print(str.startswith("hh"))
print(str.endswith("h"))
print(str.endswith("hhhh"))

执行结果

True
False
True
False


str.isdigit()


作用:检查字符串是否只由数字组成

str = "123134123"
print(str.isdigit())

执行结果

true

 

str.isalpha()


作用:检查字符串是否只由字母组成

str = "abc"


print(str.isalpha())

执行结果

true

 

str.splitlines([keepends])


作用:将字符串按照行 ('\r', '\r\n', \n') 分隔

str = """
123
456
789
"""
print(str.splitlines())
with open("./file1.txt", encoding="utf-8") as f:
    lists = f.read().splitlines()
    print(lists)

执行结果

['', '123', '456', '789']
['name: Jack   ;    salary:  12000', ' name :Mike ; salary:  12300', 'name: Luk ;   salary:  10030', '  name :Tim ;  salary:   9000', 'name: John ;    salary:  12000', 'name: Lisa ;    salary:   11000']
相关文章
|
2月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
146 67
|
2月前
|
Python
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
130 64
|
2天前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
15 3
|
6天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
19 2
|
1月前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
50 18
|
25天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
49 8
|
1月前
|
Python
Python中的函数
Python中的函数
45 8
|
1月前
|
存储 测试技术 Python
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
47 5
|
1月前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
41 7
|
2月前
|
Python
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
42 6