字符串的操作

• (1)len(str)
• (2)max(str)
• (3)min(str)
• (4)str.split(mark, number)
• (5)bigStr.count(smallStr, start, end)
• (6)bigStr.find(smallStr, start, end)
• (7)bigStr.index(smallStr, start, end)
• (8)str.replace(oldStr, newStr, number)
• (9)mark.join(array)
• (10)str.strip(mark)
• (11)str.upper()
• (12)str.lower()
• (13)str.capitalize()
• (14)str.title()
• (15)str.isupper()
• (16)str.islower()
• (17)str.startswith(string, start, end)
• (18)str.endswith(string, start, end)
• (19)str.center(width, mark)
• (20)str.lstrip(width, mark)
• (21)str.rstrip(width, mark)
• (22)str.partition(string)
• (23)str.splitlines(judge)
• (24)str.isalpha()
• (25)str.isdigit()
• (26)str.isalnum()
• (27)str.isspace()


(1)len(str)

返回字符串的长度 / 列表的长度

(2)max(str)

返回字符串中 ASCII 最大的字符 / 列表中最大的元素

(3)min(str)

返回字符串中 ASCII 最小的字符 / 列表中最小的元素

(4)str.split(mark, number)

① mark:分割的符号;② number:分割的次数,默认是-1,即全部分割 (选填)

用 mark 分割字符串,并以列表的形式返回

str1 = 'my name is superman'
print(str1.split(' ', 2))
# ---------- 输出 ----------
# ['my', 'name', 'is superman']

(5)bigStr.count(smallStr, start, end)

① smallStr:寻找的子字符串;② start:开始找的位置 (选填);③ end:结束找的位置 (选填);默认是全部找一遍。

在位置 [ start, end ) 中寻找子字符串 smallStr,并返回存在的数量

str1 = 'my name is superman, superman is my name'
print(str1.count('er', 2, 20))
# ---------- 输出 ----------
# 1

(6)bigStr.find(smallStr, start, end)

① smallStr:寻找的子字符串;② start:开始找的位置 (选填);③ end:结束找的位置 (选填);默认是全部找一遍。

在位置 [ start, end ) 中寻找子字符串 smallStr,如果存在,则返回第一次出现的位置;不存在则返回 -1

str1 = "asdfghasdfgh"
print(str1.find('fgh', 5, 12))
# ---------- 输出 ----------
# 9
  • bigStr.rfind(smallStr, start, end) - - - 从右边找起

(7)bigStr.index(smallStr, start, end)

① smallStr:寻找的子字符串;② start:开始找的位置 (选填);③ end:结束找的位置 (选填);默认是全部找一遍。

在位置 [ start, end ) 中寻找子字符串 smallStr,如果存在,则返回第一次出现的位置;不存在则报错

  • bigStr.rindex(smallStr, start, end) - - - 从右边找起

(8)str.replace(oldStr, newStr, number)

① oldStr:要被替换的子字符串;② newStr:替换的子字符串;③ number:进行替换的最大数量 (选填)

用新的字符串 newStr 替换原字符串中的子字符串 oldStr

str1 = "my name is superman, superman is my name"
print(str1.replace('superman', 'monster', 1))
# ---------- 输出 ----------
# my name is monster, superman is my name

(9)mark.join(array)

① mark:拼接的符号;② array:字符串序列

用于 mark 拼接序列 array 中的字符串元素

mark = '-'
list1 = ['1', '2', '3', '4']
print(mark.join(list1))
# ---------- 输出 ----------
# 1-2-3-4

(10)str.strip(mark)

① mark:需要去除的字符

用于去除字符串 str 两边的指定字符 mark,默认是空格

str1 = "   superman      "
print(str1.strip())
str2 = "**superman****"
print(str2.strip('*'))
# ---------- 输出 ----------
# superman
# superman
  • str.lstrip(mark) - - - 去除左边的指定字符串,默认是空格
  • str.rstrip(mark) - - - 去除右边的指定字符串,默认是空格

(11)str.upper()

将全部字母转成大写

str1 = "superman"
print(str1.upper())
# ---------- 输出 ----------
# SUPERMAN

(12)str.lower()

将全部字母转成小写

(13)str.capitalize()

将字符串的首字母大写

str1 = "superman"
print(str1.capitalize())
# ---------- 输出 ----------
# Superman

(14)str.title()

将字符串的每个单词的首字母大写

str1 = "superman is my name"
print(str1.title())
# ---------- 输出 ----------
# Superman Is My Name

(15)str.isupper()

判断是否全部字母都是大写,成立则返回 true,否则返回 false

str1 = "SUPERMAN"
print(str1.isupper())
# ---------- 输出 ----------
# True

(16)str.islower()

判断是否全部字母都是小写,成立则返回 True,否则返回 False

(17)str.startswith(string, start, end)

① string:进行判断字符串;② start:开始判断的位置 (选填);③ end:结束判断的位置 (选填)

在位置 [ start, end ) 中检测字符串是否是以 string 开头, 是则返回 True,否则返回 False

str1 = "superman is my name"
print(str1.startswith('super'))
# ---------- 输出 ----------
# True

(18)str.endswith(string, start, end)

① string:进行判断字符串;② start:开始判断的位置 (选填);③ end:结束判断的位置 (选填)

在位置 [ start, end ) 中检测字符串是否是以 string 结尾, 是则返回 True,否则返回 False

(19)str.center(width, mark)

① width:显示的长度;② mark:补全的字符

将字符串在 width 宽度中居中显示,并用 mark 补全

str1 = "superman"
print(str1.center(20, '-'))
# ---------- 输出 ----------
# ------superman------

(20)str.lstrip(width, mark)

① width:显示的长度;② mark:补全的字符

将字符串在 width 宽度中左对齐,并用 mark 补全

(21)str.rstrip(width, mark)

① width:显示的长度;② mark:补全的字符

将字符串在 width 宽度中居中右对齐,并用 mark 补全

(22)str.partition(string)

① string:进行分隔的字符串

将字符串 str 分隔成三部分,str 前、str、str 后,并以元组的形式返回

str1 = "superman"
print(str1.partition('per'))
# ---------- 输出 ----------
# ('su', 'per', 'man')
  • str.rpartition(string) - - - 从右边找起

(23)str.splitlines(judge)

① judge:默认 false,不保存换行符;true ,保存换行符

将每一行的内容整合成一个列表返回

str1 = 'abc\n\ndef\rkl\r\n'
print(str1.splitlines())
print(str1.splitlines(True))
# ---------- 输出 ----------
# ['abc', '', 'def', 'kl']
# ['abc\n', '\n', 'def\r', 'kl\r\n']
  • ① \ n:将当前位置移到下一行开头;② \ r:将当前位置移到当前行开头

(24)str.isalpha()

用于检测字符串 str 是否全由字母组成,是则返回 True,否则返回 False

str1 = 'superman'
print(str1.isalpha())
# ---------- 输出 ----------
# True

(25)str.isdigit()

用于检测字符串 str 是否全由数字组成,是则返回 True,否则返回 False

(26)str.isalnum()

用于检测字符串 str 是否全由字母 / 数字组成,是则返回 True,否则返回 False

(27)str.isspace()

用于检测字符串 str 是否全由空格组成,是则返回 True,否则返回 False