Python3字符串(str)操作详解:__add__,__contains__,__eq__等
181 浏览量
更新于2024-09-02
收藏 68KB PDF 举报
在Python 3中,`str`类型是用于表示文本数据的不可变序列。字符串提供了丰富的内置方法和操作,使得在处理文本时具有很高的灵活性。在本文中,我们将深入探讨一些重要的`str`对象的方法和特性。
首先,让我们看下`__add__`函数,它允许我们在一个字符串后面追加另一个字符串。例如:
```python
s1 = 'Hello'
s2 = s1.__add__(' boy!')
print(s2) # 输出:Hello boy!
```
这里,`__add__`方法将`s1`和' boy!'连接起来,生成一个新的字符串`s2`。
接下来是`__contains__`方法,它用于检查一个字符串是否包含在另一个字符串中。如果找到,返回`True`,否则返回`False`:
```python
s1 = 'Hello'
result = s1.__contains__('He')
print(result) # 输出:True
```
`__eq__`方法用于比较两个字符串是否相等。如果内容完全相同,返回`True`,否则返回`False`:
```python
s1 = 'Hello'
s2 = 'How'
result = s1.__eq__(s2)
print(result) # 输出:False
```
除了这些基本操作,Python 3的字符串还支持许多其他方法:
- `__format__`: 用于格式化字符串,类似于C语言中的`printf`风格,可以插入变量和格式化规则。
- `__getattribute__`: 获取字符串对象的属性,当访问不存在的属性时,会触发`AttributeError`。
- `__getitem__`: 支持索引访问,如`s[0]`会返回字符串的第一个字符。
- `__getnewargs__`: 返回创建新字符串所需的一组参数,通常用于复制或序列化对象。
- `__ge__`, `__gt__`, `__le__`, `__lt__`: 比较运算符,分别代表大于或等于、大于、小于或等于和小于。
- `__hash__`: 计算字符串的哈希值,常用于字典和集合等数据结构的键。
- `__iter__`: 使字符串可迭代,通过遍历每个字符实现。
- `__len__`: 返回字符串的长度,即其中字符的数量。
- `__mod__`: 支持模运算,与`%`操作符类似,用于格式化字符串。
- `__mul__`: 字符串乘法,将字符串重复多次。
- `__new__`: 创建新字符串对象,一般不直接使用,但在子类化时可能用到。
- `__ne__`: 判断两个字符串是否不相等。
- `__repr__`: 返回字符串的可打印表示,通常用于调试。
- `__rmod__`, `__rmul__`: 右侧版本的模运算和乘法运算,用于与其他类型的对象组合。
- `__sizeof__`: 返回字符串在内存中占用的字节数。
- `__str__`: 返回字符串的自身表示,通常用于`print`函数。
除此之外,还有一些常见的字符串方法:
- `capitalize()`: 将字符串的第一个字符转换为大写,其余字符保持不变。
- `casefold()`: 对字符串进行全折叠,将所有字符转换为小写形式,比`lower()`更彻底。
- `center()`: 返回指定宽度的字符串,原字符串居中,两侧用指定字符填充。
- `lower()`: 转换字符串中的所有大写字母为小写。
- `upper()`: 转换字符串中的所有小写字母为大写。
- `ljust()`: 返回指定宽度的字符串,原字符串左对齐,右侧用指定字符填充。
- `rjust()`: 返回指定宽度的字符串,原字符串右对齐,左侧用指定字符填充。
- `replace(old, new[, count])`: 将字符串中的`old`子串替换为`new`,可选参数`count`限制替换次数。
- `split([sep[, maxsplit]])`: 按照指定分隔符`sep`分割字符串,返回一个列表。`maxsplit`限制最大分割次数。
- `strip([chars])`: 去除字符串两侧的指定字符,默认去除空白字符。
- `find(sub[, start[, end]])`: 查找子串`sub`在字符串中的位置,返回开始索引,未找到则返回-1。
- `index(sub[, start[, end]])`: 同`find()`,但未找到时会抛出`ValueError`异常。
了解并熟练运用这些字符串操作和方法,能极大地提高你在Python 3中处理文本数据的效率和代码质量。无论是简单的文本处理还是复杂的字符串操作,Python 3的`str`类型都能提供强大的支持。
2019-09-04 上传
2021-01-20 上传
2018-12-13 上传
2020-09-19 上传
2022-08-02 上传
2020-09-21 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
weixin_38596413
- 粉丝: 6
- 资源: 956
最新资源
- JavaScript实现的高效pomodoro时钟教程
- CMake 3.25.3版本发布:程序员必备构建工具
- 直流无刷电机控制技术项目源码集合
- Ak Kamal电子安全客户端加载器-CRX插件介绍
- 揭露流氓软件:月息背后的秘密
- 京东自动抢购茅台脚本指南:如何设置eid与fp参数
- 动态格式化Matlab轴刻度标签 - ticklabelformat实用教程
- DSTUHack2021后端接口与Go语言实现解析
- CMake 3.25.2版本Linux软件包发布
- Node.js网络数据抓取技术深入解析
- QRSorteios-crx扩展:优化税务文件扫描流程
- 掌握JavaScript中的算法技巧
- Rails+React打造MF员工租房解决方案
- Utsanjan:自学成才的UI/UX设计师与技术博客作者
- CMake 3.25.2版本发布,支持Windows x86_64架构
- AR_RENTAL平台:HTML技术在增强现实领域的应用