字符串是Python中一种基础数据类型,几乎用于数据处理、机器学习、Web开发等多种领域。为更好的理解和掌握字符串,在这里对python的主要字符串操作进行简单的分析与总结。
1. 创建字符串:
- 单引号和双引号:可以通过在单引号(
'Hello'
)或双引号("Hello"
)中包含字符来创建字符串。这两种方式在功能上是相同的。 - 三引号:对于多行字符串,需使用三引号(
'''
或"""
)。常用于文档字符串或某些文本数据等跨越多行的字符串。
2. 基本操作:
- 连接:使用
+
运算符连接字符串:'Hello' + ' World'
结果为'Hello World'
。 - 重复:使用
*
运算符重复字符串:'Hello' * 3
结果为'HelloHelloHello'
。 - 索引:通过索引访问单个字符(从0开始):
'Hello'[1]
结果为'e'
。负索引从末尾开始:'Hello'[-1]
为'o'
。 - 切片:使用切片提取子字符串:
'Hello'[1:3]
结果为'el'
。切片语法依然遵序[start:stop:step]
,step
默认为 1,且不包含stop
处内容。
3. 内置字符串方法:
Python字符串附带了许多内置方法,用于常见操作:
- 大小写转换:
lower()
、upper()
、capitalize()
、title()
等用于大小写转换。 - 修剪:
strip()
、lstrip()
、rstrip()
用于修剪字符串两端的空白(或其他字符)。 - 替换和分割:
replace()
、split()
、join()
用于替换子字符串,将字符串分割为列表,或将列表(list)连接为字符串。 - 搜索:
find()
、index()
、count()
用于搜索子字符串或计数出现次数。 - 检查内容:
isdigit()
、isalpha()
、isspace()
、startswith()
、endswith()
用于检查字符串内容的性质; - 内容操作:
sorted(str)
实现对字符的排序,Counter(str)
实现对字符串中各个字符出现次数的统计并以类似词典的方式返回结果,len()
提取字符串长度。
4. 字符串格式化:
- 传统方法:使用
%
运算符:'Name: %s, Age: %d' % ('Alice', 30)
。 - python方法更为灵活:
str.format()
**,比如'Name: {}, Age: {}'.format('Alice', 30)
。 - 格式化字符串字面量(f-Strings):在Python 3.6中引入,允许内联表达式:
f'Name: {name}, Age: {age}'
。
5. 不可变性:
- Python中的字符串是不可变的,这意味着一旦创建了一个字符串,其内容就不能被更改。任何看似修改字符串的操作实际上都会创建一个新的字符串。
6. 转义字符:
- 使用反斜杠(
\
)作为转义字符,如换行符(\n
)、制表符(\t
)或在字符串中包含字面引号(\"
或\'
)。
7. 原始字符串 (Raw Strings):
- 字符串前加
r
或R
前缀(例如,r'\n'
)创建一个原始字符串,它将反斜杠视为字面字符,不解释转义字符。