Python字符串操作:索引、切片与序列概念解析

1 下载量 99 浏览量 更新于2024-08-28 收藏 120KB PDF 举报
在Python中,字符串是不可变序列,这意味着它们的元素不能被改变,但我们可以对它们进行各种操作。以下是一些常用的操作字符串的函数和方法: 1. **索引**: - 在Python中,字符串的索引从0开始,可以通过`str[index]`获取指定位置的字符,例如`lang[0]`将返回字符串的第一个字符。 - 除了正向索引,Python还支持负向索引,`str[-1]`会返回最后一个字符,`str[-2]`则返回倒数第二个字符。 2. **切片**: - 切片允许我们提取字符串的一部分。使用`str[start:end]`可以获取从索引`start`到`end-1`的子串,例如`lang[1:5]`将得到'study'。 - 如果希望包括结束位置的字符,可以使用`str[start:end+1]`。 - 如果省略起始索引,将默认从字符串开头开始;如果省略结束索引,将默认到字符串末尾。 3. **字符串长度**: - 使用内置函数`len(str)`可以获取字符串的长度,例如`len(lang)`将返回字符串`lang`的字符数。 4. **连接字符串**: - 使用加号`+`可以将两个或多个字符串连接在一起,如`"hello " + "world"`将得到`"hello world"`。 - 对于大量字符串的连接,使用`join()`方法更高效,如`separator.join(strings_list)`,例如`", ".join(["apple", "banana", "orange"])`生成`"apple, banana, orange"`。 5. **字符串重复**: - `str * n`可以将字符串重复`n`次,例如`"x" * 5`得到`"xxxxx"`。 6. **字符串查找**: - `str.find(substring)`和`str.index(substring)`用于查找子串在字符串中的位置,前者返回子串的第一个出现位置,找不到则返回-1;后者找不到会抛出异常。 - `str.count(substring)`计算子串在字符串中出现的次数。 7. **字符串替换**: - `str.replace(old, new)`将字符串中的所有`old`子串替换为`new`。 8. **分割字符串**: - `str.split(separator)`根据分隔符`separator`将字符串拆分为列表,如`"hello world".split(" ")`得到`["hello", "world"]`。 9. **去除空白**: - `str.strip()`, `lstrip()`, 和 `rstrip()`分别用于移除字符串首尾、左侧和右侧的空白字符。 - `str.replace(" ", "")`可去除所有空格。 10. **格式化字符串**: - `%`操作符用于旧式字符串格式化,如`"My name is %s, age is %d" % ("Alice", 25)`。 - `str.format()`方法是新的格式化方式,如`"My name is {}, age is {}".format("Alice", 25)`。 - f-string(格式化字符串字面量)是Python 3.6引入的新特性,如`f"My name is {name}, age is {age}"`。 11. **大小写转换**: - `str.lower()`将字符串转换为小写,`str.upper()`转为大写,`str.capitalize()`仅首字母大写,`str.title()`每个单词首字母大写。 12. **检查子串**: - `str.startswith(prefix)`和`str.endswith(suffix)`检查字符串是否以`prefix`开始或以`suffix`结束。 以上只是Python中处理字符串的一些基本操作,Python字符串功能非常强大,还有更多高级特性和方法,如正则表达式操作、编码解码等,都使得在Python中处理字符串变得非常灵活和便捷。