当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python bytes.title用法及代码示例


用法:

bytes.title()
bytearray.title()

返回二进制序列的标题版本,其中单词以大写 ASCII 字符开头,其余字符为小写。未大小写的字节值保持不变。

例如:

>>> b'Hello world'.title()
b'Hello World'

小写 ASCII 字符是序列 b'abcdefghijklmnopqrstuvwxyz' 中的那些字节值。大写 ASCII 字符是序列 b'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 中的那些字节值。所有其他字节值都是不区分大小写的。

该算法使用一个简单的独立于语言的单词定义作为一组连续的字母。该定义在许多情况下都有效,但这意味着缩写和所有格中的撇号形成单词边界,这可能不是预期的结果:

>>> b"they're bill's friends from the UK".title()
b"They'Re Bill'S Friends From The Uk"

可以使用正则表达式构造撇号的解决方法:

>>> import re
>>> def titlecase(s):
...     return re.sub(rb"[A-Za-z]+('[A-Za-z]+)?",
...                   lambda mo: mo.group(0)[0:1].upper() +
...                              mo.group(0)[1:].lower(),
...                   s)
...
>>> titlecase(b"they're bill's friends.")
b"They're Bill's Friends."

注意

此方法的 bytearray 版本确实 not 就地操作 - 它总是产生一个新对象,即使没有进行任何更改。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 bytes.title。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。