Python字符串操作详解:包含、相等与格式化
72 浏览量
更新于2024-08-30
收藏 62KB PDF 举报
本文主要介绍了Python字符串的一些常用方法和操作,包括`__contains__()`、`__eq__()`、字符串相加、`format`字符串拼接、`capitalize()`、`casefold()`以及`center()`。
在Python中,字符串是不可变的数据类型,这意味着对字符串的操作不会改变原来的字符串,而是创建新的字符串。以下是对这些方法和操作的详细说明:
1. `__contains__()`:这个方法用于检查字符串中是否包含特定的字符或子字符串。如果包含,则返回`True`,否则返回`False`。例如:
```python
str1 = "asdfgh"
print(str1.__contains__('a')) # 输出:True
print(str1.__contains__("df")) # 输出:True
print(str1.__contains__('r')) # 输出:False
```
这个功能与Python的`in`关键字类似,例如:
```python
print('s' in str1) # 输出:True
```
2. `__eq__()`:这个方法用于比较两个字符串是否相等。如果两个字符串完全相同,则返回`True`,否则返回`False`。
```python
str1 = "asdf"
print(str1.__eq__("asdf")) # 输出:True
print(str1.__eq__("addfd")) # 输出:False
```
3. 字符串相加:在Python中,可以使用`+`运算符将两个字符串连接起来。
```python
str1 = "asd"
str2 = "fgh"
str3 = str1 + str2
str4 = "%s%s" % (str1, str2)
print(str3) # 输出:"asdfgh"
print(str4) # 输出:"asdfgh"
```
4. `format`字符串拼接:`format`方法允许我们动态地插入值到字符串中,通过占位符`{}`来指定位置。
```python
str1 = "as{0}dsz{1}"
result = str1.format("hu", "ui")
print(result) # 输出:"ashudszui"
str2 = "as{id}dsfdfz{name}"
result = str2.format(id="hu", name="ui")
# 在format里的变量仅限于当前作用域,不能在外部使用
print(result) # 输出:"ashudsfdfzui"
```
5. `capitalize()`:这个方法将字符串的第一个字符转换为大写,其余字符保持不变。
```python
str1 = "asdfg"
print(str1.capitalize()) # 输出:"Asdfg"
```
6. `casefold()`:此方法将字符串转换为全小写形式,对于某些特殊字符,它的效果可能比简单的`lower()`更彻底。
```python
str1 = "ASDFG"
print(str1.casefold()) # 输出:"asdfg"
```
7. `center()`:这个方法将字符串居中,并在两侧填充指定数量的空格(默认为空格)以达到指定的总宽度。
```python
str1 = "sdfg"
print(str1.center(20)) # 输出:" sdfg "
print(str1.center(20, '*')) # 输出:"sdfg"
```
以上就是Python字符串的一些基本操作和方法,它们在处理文本数据时非常有用。在实际编程中,根据需求选择合适的方法可以有效地完成字符串的处理任务。
2020-12-23 上传
2020-09-20 上传
2020-12-24 上传
点击了解资源详情
2024-04-26 上传
2021-01-21 上传
2021-01-21 上传
2020-09-21 上传
weixin_38590541
- 粉丝: 6
- 资源: 937
最新资源
- watch-bash:Unix(Linux Mac OS X)监视文件更改为concat或..做某事。 (重击shell脚本)
- helion-rabbitmq-java:这是一个简单的基于 Servlet 的 Java web 应用程序,它使用 RabbitMQ
- springAngular:Todos los archivos del curso de springAngular
- 电子功用-用于升级电子设备的系统的方法
- online_farmers_market
- export-pdf
- VirtualChair-开源
- json_api_transform
- linux-Termux一键安装Linux脚本.zip
- 投资组合:琼·克拉克的单页个人投资组合页面
- 在设计器中使用qml自定义Quick模块(使用qml源码) 测试源码
- restaurant-template:为机器人餐厅模板准备的后端
- 电子功用-变电站温湿度在线监测预警系统
- InterfaceComponent:这个界面组件提供了一个滑动标签界面,任何人都可以使用它轻松地为他们的应用程序提供多片段活动
- kasparov:Kasparov是一个Web面板,用于管理远程服务器并在其上执行一些常见任务,专为希望执行一些基本任务(例如设置Web服务器)的非技术人员设计
- 51单片机不同数据类型的延时函数控制LED灯闪烁源代码