Python不为人知的字符串技巧

需积分: 7 0 下载量 200 浏览量 更新于2024-09-04 收藏 1KB TXT 举报
"这篇文档介绍了Python中一些不常见的字符串操作,包括检查字符串结尾、开始、扩展制表符、查找子串、验证标识符、检查数字、空格、标题格式、字符串连接、创建转换映射以及分割和切换大小写等方法。这些操作在特定场景下非常有用,扩展了对Python字符串处理的理解和应用。" 在Python中,字符串是不可变的序列,提供了丰富的操作方法。以下是文档中提到的一些不常见但实用的字符串操作: 1. `str.endswith()` 和 `str.startswith()`: 这两个方法用于检查字符串是否以指定的字符或字符串结尾或开始。例如,`a.endswith('s')`会返回`True`如果字符串`a`以`s`结尾,而`b.a.startswith('w')`检查`b.a`是否以`w`开始。 2. `str.expandtabs(tabsize=30)`: 此方法将字符串中的制表符(\t)替换为指定数量的空格。默认情况下,制表符被扩展为8个空格,但你可以通过`tabsize`参数自定义。 3. `str.find()`: 这个方法返回字符串中指定子串的第一个出现的索引。例如,`'wyq'.find('w')`返回0,因为`'w'`是字符串`'wyq'`的第一个字符。 4. `str.isidentifier()`: 使用此方法可以检查一个字符串是否符合Python的标识符规则,即能否作为合法的变量名。如果字符串只包含字母、数字和下划线,并且不以数字开头,`isidentifier()`将返回`True`。 5. `str.isnumeric()`: 这个方法检测字符串是否仅包含数字,不包含字母或小数点。如果字符串全由数字组成,`isnumeric()`返回`True`。 6. `str.isspace()`: 检查字符串是否只包含空白字符,如空格、制表符和换行符。如果字符串全为空白字符,`isspace()`返回`True`。 7. `str.istitle()`: 判断字符串是否符合标题格式,即每个单词的首字母大写,其余字母小写。如果满足条件,`istitle()`返回`True`。 8. `str.join(iterable)`: 使用指定的字符串(在这个例子中是`'+'`)将可迭代对象(如列表`['1','2','3']`)的元素连接起来。这会生成`'1+2+3'`。 9. `str.maketrans()`: 创建一个字符映射表,用于`str.translate()`方法。例如,`p=str.maketrans('abcdefg','1234567')`创建了一个映射,将`'abcdefg'`中的每个字符映射到对应的数字。然后,`'bade'.translate(p)`根据映射表转换字符串。 10. `str.split(separator)`: 将字符串按照指定的分隔符分割成列表。`'wyq'.split('w')`返回`['', 'yq']`,因为`'w'`将字符串分成了两部分。 11. `str.swapcase()`: 此方法将字符串中的所有字母进行大小写的互换。如果字符串`'wyqds'`中的所有字母都是小写,`swapcase()`会将其转换为全大写。 这些不常见的字符串操作为Python程序员提供了更灵活的字符串处理手段,适用于各种文本处理和数据清洗任务。了解并熟练使用这些方法,可以提高代码的效率和可读性。