目录
一、字符串部分
1.1、字符串中的运算符
1.2、字符串中获取
函数 | 意义 | 示例 |
index(_sub, _start, _end) | 在指定范围内查找 _sub 子串的下标 _start 默认是字符串的开头 _end 默认是字符串的结尾 注意事项:如果找不到,会异常 | print(s.index("qf")) print(s.index("qf", 3)) print(s.index("qf", 3, 10)) |
find(_sub, _start, _end) | 在指定范围内查找 _sub 子串的下标 _start 默认是字符串的开头 _end 默认是字符串的结尾 注意事项:如果找不到,会返回-1 | print(s.find("qf")) print(s.find("qf"), 3) print(s.find("qf"), 3, 10) |
rindex(_sub, _start, _end) | 在指定范围内查找 _sub 子串的最后一次出现的下标 _start 默认是字符串的开头 _end 默认是字符串的结尾 注意事项:如果找不到,会异常 | print(s.rindex("qf")) print(s.rindex("qf", 3)) print(s.rindex("qf", 3, 10)) |
rfind(_sub, _start, _end) | 在指定范围内查找 _sub 子串的最后一次出现的下标 _start 默认是字符串的开头 _end 默认是字符串的结尾 注意事项:如果找不到,会返回-1 | print(s.rfind("qf")) print(s.rfind("qf"), 3) print(s.rfind("qf"), 3, 10) |
count(_sub, _start, _end) | 在指定范围内查找 _sub 子串出现的次数 _start 默认是字符串的开头 _end 默认是字符串的结尾 | print(s.count("a")) print(s.count("a", 3)) print(s.count("a", 3, 10)) |
1.3、字符串的转换操作
函数 | 意义 | 示例 |
upper() | 将一个字符串中的小写字母转成大写 | s.upper() |
lower() | 将一个字符串中的大写字母转成小写 | s.lower() |
swapcase() | 将一个字符串中的大小写字母翻转 | s.swapcase |
capitalize() | 将一个字符串的首字母变成大写,其他字母小写 | s.capitalize() |
title() | 将一个字符串的每一个单词的首字母变大写,其他字母小写 | s.title() |
encode(encoding) | 将一个字符串转成一个指定字符集的字节序列 | s.encode(encoding="utf8") |
decode(encoding) | 注意,这个函数并不是str的函数,需要使用一个字节序列来调用。将一个字节序列,按照指定的字符集,解析成为一个字符串 | binary_str.decode(encoding="utf8") |
1.4、字符串的判断操作
函数 | 意义 | 示例 |
isdigit() | 判断一个字符串是否是纯数字 | "123".isdigit() |
isalpha() | 判断一个字符串是否是纯字母 注意事项:并非只是英文字母,其他的文字,例如中文中的每一个汉字,也都被视为字母 | "abc".isalpha() |
isalnum() | 判断字符串的内容是否为数字或者字母 | "123abc".isalnum() |
isupper() | 判断字符串中的英文字母是否为大写字母 | "123abc".isupper() |
islower() | 判断字符串中的英文字母是否为小写字母 | "123abc".islower() |
istitle() | 判断字符串的内容是否满足 单词的首字母大写 其他小写 | "Hello World".istitle() |
startswith() | 判断字符串是否以指定的字符串开头 参数可以是一个字符串,也可以是一个元组 字符串参数:判断是否是以指定字符串开头 元组参数:判断是否是以元组中的任意一个字符串开头 | "Harry Potter".startswith("Harry") "Harry Potter".startswith(("Harry", "harry", "HARRY")) |
endswith() | 判断字符串是否以指定的字符串结尾 参数可以是一个字符串,也可以是一个元组 字符串参数:判断是否是以指定的字符串结尾 元组参数:判断是否是以元组中的任意一个字符串结尾 | "Harry Potter.mp4".endswith(".mp4") "Harry Potter.mp4".endswith((".mp4", ".rmvb", ".avi")) |
1.5、字符串的格式化操作
函数 | 意义 | 示例 |
ljust(_width, _fillchar) | 按照指定的宽度,对字符串的内容进行填充,居左对齐 _width: 宽度 _fillchar: 向右填充的字符,默认空格 | 'hello'.ljust(10) 'hello'.ljust(10, '-') |
rjust(_width, _fillchar) | 按照指定的宽度,对字符串的内容进行填充,居右对齐 _width: 宽度 _fillchar: 向左填充的字符,默认空格 | hello'.rjust(10) 'hello'.rjust(10, '-') |
center(_width,_fillchar) | 按照指定的宽度,对字符串的内容进行填充,居中对齐 _width: 宽度 _fillchar: 向两端填充的字符,默认空格 | 'hello'.center(10) 'hello'.center(10, '-') |
zfill(_width) | 按照指定的宽度,对字符串的内容进行填充,居右对齐,左侧填充 0 _width: 宽度 | '10'.zfill(10) |
1.6、字符串的切割与拼接
函数 | 意义 | 示例 |
split(__sep, __maxsplit) | 将字符串,从左往右,按照指定的分隔符进行切割 __sep: 指定的分隔符,默认是若干空格 __maxsplit: 切割的次数,默认是不限制次数 | "Lily Lucy Tom".split(" ") "Lily Lucy Tom".split() "Lily,Lucy,Tom".split(",") "Lily,Lucy,Tom".split(",", 1) |
rsplit(__sep,__maxsplit) | 将字符串,从右往左,按照指定的分隔符进行切割 __sep: 指定的分隔符,默认是若干空格 __maxsplit: 切割的次数,默认是不限制次数 | "Lily Lucy Tom".rsplit(" ") "Lily Lucy Tom".rsplit() "Lily,Lucy,Tom".rsplit(",") "Lily,Lucy,Tom".rsplit(",", 1) |
join(__iterable) | 将一个容器中的若干元素,按照指定的分隔符拼接到一起 __iterable: 可以迭代的容器,包含str, list, tuple | ",".join(["Tom", "Jerry", "Li"]) |
1.7、字符串的替换和移除操作
函数 | 意义 | 示例 |
replace(__old,__new,__count) | 将一个字符串中指定的字符串,替换成新的字符串。 | "hello world".replace("l", "L") |
strip(__chars) | 去除一个字符串左右两端的指定字符,默认去除空格 | " hello ".strip() |
lstrip(__chars) | 去除一个字符串左边的指定字符,默认去除空格 | " hello ".lstrip() |
rstrip(__chars) | 去除一个字符串右边的指定字符,默认去除空格 | " hello ".rstrip() |
二、集合部分
2.1、集合中的运算符
2.2、集合的操作
函数 | 意义 | 示例 |
add | 添加元素 | s1 = {} s1.add(1) |
remove | 删除元素 如果要删除的元素不存在,报错 | s1 = {1, 2, 3} s1.remove(2) |
discard | 删除元素 如果要删除的元素不存在,不报错 | s1 = {1, 2, 3} s1.discard(2) |
clear | 清空集合 | s1 = {1, 2, 3} s1.clear() |
isdisjoint | 判断两个集合是否不存在交集 | s1 = {1, 2, 3} s2 = {4, 5, 6} s1.isdisjoint(s2) |
copy | 拷贝一个集合 | s1 = {1, 2, 3} s1.copy() |
三、列表部分
3.1、列表的运算符
3.2、列表的元素操作
函数 | 意义 | 示例 |
append(__object) | 添加一个元素到列表的末尾 | list1 = [1, 2, 3, 4] list1.append(5) |
insert(__index, __object) | 将一个元素添加到列表的指定下标位置 | list1 = [1, 2, 3, 4, 5] list1.insert(0, 100) |
extend(__iterable) | 添加一个容器中的元素,到当前列表的末尾,相当于 += | list1 = [1, 2, 3, 4, 5] list2.extend([10, 20, 30]) |
pop(__index) | 删除指定下标位的元素,默认是最后一位 __index: 需要删除的元素的下标,默认是最后一位 返回值: 刚刚被删除的元素 | list1 = [1, 2, 3, 4, 5] list1.pop() list1.pop(2) |
remove(__value) | 删除列表中的指定元素。 注意事项:
| list1 = [100, 200, 300, 100] list1.remove(100) |
clear() | 清空列表中的所有元素 | list1 = [1, 2, 3, 4, 5] list1.clear() |
index(__value,__start,__stop) | 在指定范围内查找指定元素的下标 如果找不到,会报错 __value: 需要查找的元素 __start: 开始查找的下标,默认开始 __stop: 结束查找的下标,默认结尾 | list1 = [1, 2, 3, 4, 5] list1.index(2) list1.index(2, 1, 5) |
count(__value) | 查找列表中某一个元素出现了多少次 | list1 = [1, 1, 2, 3, 4] list1.count(1) |
3.3、列表的其他操作
函数 | 意义 | 示例 |
max(_iterable) | 获取一个容器中的最大值获取一个容器中的最小值 | max([1, 2, 3, 4, 5]) |
min(_iterable) | 获取一个容器中的最小值 | min([1, 2, 3, 4, 5]) |
sort(key,reverse) | 将一个列表中的元素进行从小到大的升序排序。 key: 函数类型,自定义排序的依据 reverse: bool类型,在排序完成之后,执行翻转操作,达到降序排列的效果 | list1 = ["hello", "hi", "Tom"] list1.sort() list1.sort(reverse=True) list1.sort(key=abs) list1.sort(key=abs, reverse=True) |
reverse() | 将一个列表中的元素翻转 | list1 = [1, 2, 3, 4, 5] list1.reverse() |
copy() | 生成一个列表的深拷贝 | list1 = [1, 2, 3, 4, 5] list2 = list1.copy() |
3.4、系统内置的高阶函数
高阶函数:如果一个函数的参数或者返回值,是另外一个函数。那么这样的函数就是高阶函数。
函数 | 意义 | 示例 |
max(_iterable, key) | 按照指定的规则,获取到一个列表中的最大值。 key: 指定的规则,将每一个元素带入到这个函数中,用返回值作为大小比较的依据。 | list1 = [1, -2, 3, -4] max(list1, key=abs) |
min(_iterable, key) | 按照指定的规则,获取到一个列表中的最小值。 key: 指定的规则,将每一个元素带入到这个函数中,用返回值作为大小比较的依据。 | list1 = [1, -2, 3, -4] min(list1, key=abs) |
sorted(_iterable,key,reverse) | 将一个容器中的元素进行生序排序,并返回升序排序之后的新的容器。 key: 排序的依据 reverse: 排序之后是否需要翻转 | list1 = [1, 2, -3, -4, 5] sorted(list1) sorted(list1, key=abs) |
filter(function, _iterable) | 过滤,保留下来满足条件的数据,过滤掉不满足条件的数据 function: 是一个判断函数,参数是每一个元素,返回值是bool类型 _iterable: 需要过滤的容器是谁 | l2 = [89, 79, 88, 59, 58, 90, 66, 65, 55, 100] res2 = list(filter(lambda x: x < 60, l2)) |
map(function,_iterable) | 映射,将容器中的每一个元素,替换成其他的元素 function: 提供一个映射函数,接收容器中的每一个元素,返回替代值 | l3 = ["xiaoming", "lily", "lucy", "uncle wang"] res4 = list(map(lambda x: x.upper(), l3)) |
四、字典部分
4.1、字典的运算符
4.2、字典的操作
函数 | 意义 | 示例 |
[] | 添加、修改键值对 如果键存在:修改对应的值 如果键不存在:添加键值对 | scores['历史'] = 89 |
setdefault | 添加键值对 如果键存在:不做任何处理 如果键不存在:添加键值对 | scores.setdefault('地理', 90) |
update | 合并其他字典,如果存在重复的键,会使用新的值覆盖原来的值 | scores.update({'政治': 90, '体育': 89, '语文': 99}) scores.update([('自然', 88), ('音乐', 78), ('数学', 78)]) |
del 关键字 | 通过键,删除键值对 如果键不存在,会报错 | del scores['体育'] |
pop | 通过键,删除键值对 如果键不存在,会报错 返回值是被删除的值 | print(scores.pop('音乐')) |
[] | 通过键,获取值 如果键不存在,会报错 | print(scores['语文']) |
get(__key,default) | 通过键,获取值 如果键存在,返回对应的值 如果键不存在,返回default的值,默认是 None __key: 需要获取的键 default: 键不存在的时候,返回的值,默认是 None | print(scores.get('语文')) print(scores.get('语文1', 0)) |
keys | 获取字典中所有的键 | print(scores.keys()) |
values | 获取字典中所有的值 | print(scores.values()) |
items | 获取所有的键值对组合,返回的是由(键, 值)元组组成的二维列表 | print(scores.items()) |
copy | 拷贝字典(深拷贝) | print(scores.copy()) |
fromkeys(_iterable,value) | 通过键序列,构造一个字典 _iterable: 键的序列 value: 所有的键默认的值,默认是 None | dict.fromkeys(['java', 'mysql', 'linux', 'hadoop']) d2 = dict.fromkeys(['java', 'mysql', 'python', 'linux', 'hadoop'], 0) |