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)