最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Python入门教程-字符串常用函数详解

XAMPP案例 admin 129浏览 0评论

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))

执行结果

123123
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']

判断一个字符串是否包含某个指定的字符串

成员操作符 in

1     str = "string test string test"
2     find1 = "str"
3     find2 = "test"
4     print(find1 in str)      # True
5     print(find1 not in str)  # False

偷偷说一句:in不只是在字符串中可以使用哦!期待后面的教程叭

使用字符串对象的

  • find()

  • rfind()

  • index()

  • rindex()

 1     str = "string test string test"
 2     find1 = "str"
 3     find2 = "test"
 4     # find
 5     print(str.find(find1))  # 0
 6     print(str.find(find2))  # 7
 7 
 8     # rfind
 9     print(str.rfind(find1))  # 12
10     print(str.rfind(find2))  # 19
11 
12     # index
13     print(str.index(find1))  # 0
14     print(str.index(find2))  # 7
15 
16     # rindex
17     print(str.rindex(find1))  # 12
18     print(str.rindex(find2))  # 19
19 
20     # count
21     print(str.count(find1))  # 2
22     print(str.count(find2))  # 2

 

find()和index()的区别

方法 区别
 find() 获取值时,如果要查找的值不存在,会返回-1
 index() 获取值的索引时,如果不存在值,会报错

 

find()和rfind()的区别

方法 区别
find() 从字符串左边开始查询子字符串匹配到的第一个索引(从0开始)
rfind() 从字符串右边开始查询字符串匹配到的第一个索引(从0开始)

 

index()和rindex()的区别

方法 区别
index() 从字符串左边开始查询子字符串匹配到的第一个索引(从0开始)
rindex() 从字符串右边开始查询字符串匹配到的第一个索引(从0开始)

 

END

转载请注明:XAMPP中文组官网 » Python入门教程-字符串常用函数详解