欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python 部分系统类的常用方法整理

程序员文章站 2022-04-14 17:08:48
下面是常用的几个系统类的常用方法整理: list: 列表[1, 2,...] set: 集合,无重复元素{1, 2,...} str: 字符串 dict: 字典{a:'a', b:'b',...} TextIOWrapper: 文件对象 子集测试(允许不严格意义上的子集): 集合中所有的元素都是 t ......

下面是常用的几个系统类的常用方法整理: 

 

list: 列表[1, 2,...]
append(x) 将x添加到序列的末尾
extend(t) 将t的内容添加到列表末尾,t可以为列表
insert(i, x) 将x插入到列表i处
count(x) 统计x在列表中出现的次数
index(x, [start, end]) 返回x在列表中第一次出现的下标(指定开始位置(包括)与结束位置(不包括))
remove(x) 将列表中第一个与x匹配的项删除
pop([i]) 在列表中删除i,无参表示删除最后一个,返回删除的元素
reverse() 将列表前后颠倒
sort() 对列表进行排序,默认从小到大
切片
lists = [0, 1, 2, 3, 4, 5]
# 取下标1至下标4之间的数字,包括1,不包括4([1, 2, 3])
lists[1:4]
# 取下标1至-1的值,不包括-1([1, 2, 3, 4])
lists[1:-1]
# 效果与lists[0:3]相同
lists[:3]
# 取下标3到最后一个
lists[3:]
# 下标从0开始,每次加2([0, 2, 4])
lists[0::2]
# 效果与lists[0::2]相同
lists[::2]

 

set: 集合,无重复元素{1, 2,...}</>
issubset(t)

子集测试(允许不严格意义上的子集): 集合中所有的元素都是 t 的成员,等价于 s <= t
子集测试(严格意义上): s != t 而且 s 中所有的元素都是 t 的成员,等价于 s < t

issuperset(t)

超集测试(允许不严格意义上的超集): t 中所有的元素都是集合的成员,等价于 s >= t
超集测试(严格意义上): s != t 而且 t 中所有的元素都是 s 的成员,等价于 s > t

union(t) 合并操作: 将t中于集合不重复的元素添加到集合中,等价于 s | t
intersection(t) 交集操作: 保留集合于t中都有的元素,等价于 s & t
difference(t) 差分操作: 在集合中存在,在 t 中不存在的元素,等价于 s - t
symmetric_difference(t) 对称差分操作: 保留集合和t中的非共有的元素,等价于 s ^ t
update(t) 将 t 中的元素添加到集合中,等价于 s |= t
intersection_update(t) 交集修改操作: 仅剩下集合和t*有的成员,等价于 s &= t
difference_update(t) 差修改操作: 剩下仅属于属于但不属于t的成员,等价于 s -= t
symmetric_difference_update(t) 对称差分修改操作: 剩下仅属于集合或仅属于t的成员,等价于 s ^= t
add(obj) 加操作: 将 obj 添加到集合
remove(obj) 删除操作: 将 obj 从集合中删除,如果集合中不存在 obj,将引发异常
discard(obj) 丢弃操作: 将 obj 从集合中删除,如果集合中不存在 obj,也没事儿^_^
pop() 弹出操作: 移除并返回集合中的任意一个元素
clear() 清除操作: 清除集合中的所有元素
copy() 返回集合的拷贝(浅复制)

 

str: 字符串
capitalize() 第一个字符改为大写
casefold() 所有字符改为小写
center(width) 将字符串居中,并使用空格填充至长度 width 的新字符串
count(sub[, start[, end]]) 返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,可选。
encode(encoding='utf-8', errors='strict') 以 encoding 指定的编码格式对字符串进行编码。
endswith(sub[, start[, end]]) 检查字符串是否以 sub 子字符串结束,如果是返回 true,否则返回 false。start 和 end 参数表示范围,可选。
expandtabs([tabsize=8]) 把字符串中的 tab 符号(\t)转换为空格,如不指定参数,默认的空格数是 tabsize=8。
find(sub[, start[, end]]) 检测 sub 是否包含在字符串中,如果有则返回索引值,否则返回 -1,start 和 end 参数表示范围,可选。
index(sub[, start[, end]]) 跟 find 方法一样,不过如果 sub 不在 string 中会产生一个异常。
isalnum() 如果字符串至少有一个字符并且所有字符都是字母或数字则返回 true,否则返回 false。
isalpha() 如果字符串至少有一个字符并且所有字符都是字母则返回 true,否则返回 false。
isdecimal() 如果字符串只包含十进制数字则返回 true,否则返回 false。
isdigit() 如果字符串只包含数字则返回 true,否则返回 false。
islower() 如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回 true,否则返回 false。
isnumeric() 如果字符串中只包含数字字符,则返回 true,否则返回 false。
isspace() 如果字符串中只包含空格,则返回 true,否则返回 false。
istitle() 如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回 true,否则返回 false。
isupper() 如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回 true,否则返回 false。
join(sub) 以字符串作为分隔符,插入到 sub 中所有的字符之间。
ljust(width) 返回一个左对齐的字符串,并使用空格填充至长度为 width 的新字符串。
lower() 转换字符串中所有大写字符为小写。
lstrip() 去掉字符串左边的所有空格
partition(sub) 找到子字符串 sub ,把字符串分成一个 3 元组 (pre_sub, sub, fol_sub),如果字符串中不包含 sub 则返回 ('原字符串', '', '')
replace(old, new[, count]) 把字符串中的 old 子字符串替换成 new 子字符串,如果 count 指定,则替换不超过 count 次。
rfind(sub[, start[, end]]) 类似于 find() 方法,不过是从右边开始查找。
rindex(sub[, start[, end]]) 类似于 index() 方法,不过是从右边开始。
rjust(width) 返回一个右对齐的字符串,并使用空格填充至长度为 width 的新字符串。
rpartition(sub) 类似于 partition() 方法,不过是从右边开始查找。
rstrip() 删除字符串末尾的空格。
split(sep=none, maxsplit=-1) 不带参数默认是以空格为分隔符切片字符串,如果 maxsplit 参数有设置,则仅分隔 maxsplit 个子字符串,返回切片后的子字符串拼接的列表。
splitlines(([keepends])) 按照 '\n' 分隔,返回一个包含各行作为元素的列表,如果 keepends 参数指定,则返回前 keepends 行。
startswith(prefix[, start[, end]]) 检查字符串是否以 prefix 开头,是则返回 true,否则返回 false。start 和 end 参数可以指定范围检查,可选。
strip([chars]) 删除字符串前边和后边所有的空格,chars 参数可以定制删除的字符,可选。
swapcase() 翻转字符串中的大小写。
title() 返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串。
translate(table) 根据 table 的规则(可以由 str.maketrans('a', 'b') 定制)转换字符串中的字符。
upper() 转换字符串中的所有小写字符为大写。
zfill(width) 返回长度为 width 的字符串,原字符串右对齐,前边用 0 填充。
format(a, b, ...)

使用a替换字符串中的{0}位置

# "ic id"
"{a} id".format(a=ic)
# 27.7gb
"{0:.1f}{1}".format(27.658, 'gb')
格式化

语法: "%c %c" % (97, 98) 将%占位符使用后边的值格式化

  • %c: 使用ascll码格式化
  • %s: 字符串
  • %r: 字符串,与%s不同的是 %r会为字符串加上单引号, \n等不会翻译,原文输出
  • %d: 整数
  • %o: 无符号八进制数
  • %x: 无符号十六进制数
  • %x: 无符号十六进制数,字符大写
  • %f: 定点数,可指定小数点后的精度
  • %e: 用科学记数法格式化定点数
  • %g: 根据值的大小决定使用%f或%e

 

dict: 字典{a:'a', b:'b',...}
fromkeys(s, [v]) 将指定的值与每个键进行配对,值不给时默认为none
keys() 返回字典所有的键
values() 返回字典所有的值
items() 返回字典所有的项
get(a, [b]) 返回字典中键为a的值,若不存在返回b(默认none)
setdefault(a, [b]) 返回字典中键为a的值,若不存在将 a:b 添加进字典(默认a:none)
clear() 清空字典
copy() 将字典拷贝一份
pop(a) 将键为a的键值对删除,并返回该值
popitem() 从字典取出一组键值对删除,并以元组的形式返回

 

textiowrapper: 文件对象
close() 关闭文件
read([size=-1]) 从文件读取size个字符,当未给定size或给定负值时,读取剩余所有字符,然后作为字符串返回
readline([size=-1]) 从文件中读取并返回一行(遇到'\n'),如果有size则返回size个字符
readlines() 把文章内容以换行符分割,并生成list格式(数据量大的时候不建议用)
write(str) 将字符串str写入文件
writelines(seq) 向文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象
seek(offset, from) 在文件中移动文件指针,从from(0代表文件起始位置,1为当前位置,2为文件末尾)偏移offset个字节
tell() 返回当前在文件中的位置
truncate([size=file.tell()]) 截取文件到size个字节,默认为文件指针当前位置