User:Xyy23330121/Python/bytes 和 bytearray 的方法
以下方法为 bytes 和 bytearray 共有。为简便起见,以下仅以 bytes 为例。
常用操作
编辑查找与计数
编辑bytes.count(sub[, start[, end]])
编辑返回子序列(或0~255的整数)sub 出现的次数。其中:
bytes.count(sub, start, end)
等同于 bytes[start: end].count(sub)
bytes.find(sub[, start[, end]])
编辑返回子序列(或0~255的整数)sub 第一次出现时、首字节的索引。如果未找到 sub,则返回 -1。
特别的,bytes.find(sub, start, end)
等同于 bytes[start: end].find(sub)
bytes.index(sub[, start[, end]])
编辑类似 bytes.find,但是如果未找到 sub,则引发 ValueError。
bytes.rfind(sub[, start[, end]])
编辑返回子序列(或0~255的整数)sub 最后一次出现时、首字节的索引。如果未找到 sub,则返回 -1。
特别的,bytes.find(sub, start, end)
等同于 bytes[start: end].find(sub)
bytes.rindex(sub[, start[, end]])
编辑类似 bytes.rfind,但是如果未找到 sub,则引发 ValueError。
修改操作
编辑bytes.replace(old, new[, count])
编辑将 bytes 中所有子序列 old 替换为 new。如果指定了 count,则只替换前 count 个。
首尾操作
编辑bytes.startswith(prefix[, start[, end]])
编辑若 bytes[start: end]
以 prefix 开头,则返回 True。否则返回 False。
bytes.endswith(suffix[, start[, end]])
编辑若 bytes[start: end]
以 suffix 结尾,则返回 True。否则返回 False。
bytes.removeprefix(prefix, /)
编辑如果 bytes 以 prefix 开头,则返回移除 prefix 的副本。否则,直接返回 bytes 的副本。
bytes.removesuffix(suffix, /)
编辑如果 bytes 以 suffix 结尾,则返回移除 suffix 的副本。否则,直接返回 bytes 的副本。
拼接与拆分
编辑bytes.partition(sep)
编辑在子序列 sep 第一次出现的位置拆分序列,并返回 (sep之前, sep, sep之后)
的三元组。如果未找到 sep,则返回 bytes 的副本和两个空 bytes 对象组成的三元组。
bytes.rpartition(sep)
编辑类似 bytes.partition,但是在最后一次出现的位置拆分序列。
bytes.join(iterable)
编辑以 bytes 为分隔符,拼接 iterable 中的 bytes 或 bytearray 对象,并返回拼接得到的 bytes 对象。
返回的类型取决于分隔符的类型。如果用 bytearray.join 则会返回 bytearray。
bytes.split(sep=None, maxsplit=-1)
编辑以 sep 为分隔符,返回分割后的、由 bytes 组成的列表。如果指定 maxsplit 为正整数,则最多从左往右分割 maxsplit 次。
bytes.rsplit(sep=None, maxsplit=-1)
编辑类似 bytes.split,但是从右往左分割。
其它操作
编辑以下操作和字符串的同名方法类似。但字符串中同名方法的字符串参数都要改为用 bytes 或 bytearray 参数。不具体解释。
bytes.center(width[, fillbyte])
编辑bytes.ljust(width[, fillbyte])
编辑bytes.rjust(width[, fillbyte])
编辑bytes.zfill(width)
编辑bytes.rstrip([chars])
编辑bytes.lstrip([chars])
编辑bytes.strip([chars])
编辑bytes.capitalize()
编辑bytes.expandtabs(tabsize=8)
编辑bytes.isalnum()
编辑bytes.isalpha()
编辑bytes.isascii()
编辑bytes.isdigit()
编辑bytes.islower()
编辑bytes.isspace()
编辑bytes.istitle()
编辑bytes.isupper()
编辑bytes.lower()
编辑bytes.title()
编辑bytes.upper()
编辑==== bytes.swapcase() ==== bytes.splitlines(keepends=False)