【从零学习python 】14.Python字符串常见操作(二)

简介: 【从零学习python 】14.Python字符串常见操作(二)

count

返回 strstartend 之间在 mystr 里面出现的次数。

语法格式:

S.count(sub[, start[, end]]) -> int

示例:

mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.count('好'))  # 3. '好' 字出现三次

替换

替换字符串中指定的内容,如果指定次数 count ,则替换不会超过 count 次。

mystr = '今天天气好晴朗,处处好风光呀好风光'
newstr = mystr.replace('好', '坏')
print(mystr)  # 今天天气好晴朗,处处好风光呀好风光  原字符串未改变!
print(newstr)  # 今天天气坏晴朗,处处坏风光呀坏风光 得到的新字符串里,'好' 被修改成了 '坏'
newstr = mystr.replace('好', '坏', 2)  # 指定了替换的次数
print(newstr)  # 今天天气坏晴朗,处处坏风光呀好风光 只有两处的 '好' 被替换成了 '坏'

内容分隔

内容分隔主要涉及到 splitsplitlinespartitionrpartition 四个方法。

split

以指定字符串为分隔符切片,如果 maxsplit 有指定值,则仅分隔 maxsplit+1子字符串。返回的结果是一个列表。

mystr = '今天天气好晴朗,处处好风光呀好风光'
result = mystr.split()  # 没有指定分隔符,默认使用空格,换行等空白字符进行分隔
print(result)  # ['今天天气好晴朗,处处好风光呀好风光'] 没有空白字符,所以,字符串未被分隔
result = mystr.split('好')  # 以 '好' 为分隔符
print(result)  # ['今天天气', '晴朗,处处', '风光呀', '风光']
result = mystr.split("好", 2)  # 以 '好' 为分隔符,最多切割成 3 份
print(result)  # ['今天天气', '晴朗,处处', '风光呀好风光']

rsplit

用法和 split 基本一致,只不过是从右往左分隔。

mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.rsplit('好', 1))  # ['今天天气好晴朗,处处好风光呀', '风光']

splitlines

按照行分隔,返回一个包含各行作为元素的列表。

mystr = 'hello \nworld'
print(mystr.splitlines())

partition

mystrstr 分割成三部分,str 前,strstr 后,三部分组成一个元组。

mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.partition('好'))  # ('今天天气', '好', '晴朗,处处好风光呀好风光')

rpartition

类似于 partition() 函数,不过是从右边开始。

mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.rpartition('好'))  # ('今天天气好晴朗,处处好风光呀', '好', '风光')

修改大小写

修改大小写的功能只对英文有效,主要包括,首字母大写 capitalize ,每个单词的首字母大写 title ,全小写 lower ,全大写 upper

capitalize

第一个单词的首字母大写。

mystr = 'hello world'
print(mystr.capitalize())  # Hello world

title

每个单词的首字母大写。

mystr = 'hello world'
print(mystr.title())  # Hello World

lower

所有都变成小写。

mystr = 'hElLo WorLD'
print(mystr.lower())  # hello world

upper

所有都变成大写。

mystr = 'hello world'
print(mystr.upper())  # HELLO WORLD

空格处理

Python 为我们提供了各种操作字符串里表格的方法。

1. ljust

返回指定长度的字符串,并在右侧使用空白字符补全(左对齐)。

str = 'hello'
print(str.ljust(10))  # hello     在右边补了五个空格

2. rjust

返回指定长度的字符串,并在左侧使用空白字符补全(右对齐)。

str = 'hello'
print(str.rjust(10))  #      hello在左边补了五个空格

3. center

返回指定长度的字符串,并在两端使用空白字符补全(居中对齐)。

str = 'hello'
print(str.center(10))  #  hello   两端加空格,让内容居中

4. lstrip

删除 mystr 左边的空白字符。

mystr = '    he   llo      '
print(str.lstrip())  # he   llo      只去掉了左边的空格,中间和右边的空格被保留

5. rstrip

删除 mystr 右边的空白字符。

mystr = '    he   llo      '
print(str.rstrip())  #    he   llo右边的空格被删除

6. strip

删除两断的空白字符。

str = '    he   llo      '
print(str.strip())  # he   llo

字符串拼接

把参数进行遍历,取出参数里的每一项,然后再在后面加上 mystr

语法格式:

S.join(iterable)

示例:

mystr = 'a'
print(mystr.join('hxmdq'))  # haxamadaq  把 hxmd 一个个取出,并在后面添加字符 a. 最后的 q 保留,没有加 a
print(mystr.join(['hi', 'hello', 'good']))  # hiahelloagood

作用:可以把列表或者元组快速地转变成为字符串,并且以指定的字符分隔。

txt = '_'
print(txt.join(['hi', 'hello', 'good']))  # hi_hello_good
print(txt.join(('good', 'hi', 'hello')))  # good_hi_hello

字符串运算符

字符串和字符串之间能够使用加法运算符,作用是将两个字符串拼接成为一个字符串。例如:'hello' + 'world' 的结果是 'helloworld'

字符串和数字之间可以做乘法运算,结果是将指定的字符串重复多次。例如:'hello' * 2 的结果是 'hellohello'

字符串和字符串之间,如果使用比较运算符进行计算,会获取字符对应的编码,然后进行比较。

除上述几种运算符以外,字符串默认不支持其他运算符。

相关文章
|
10天前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
1天前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
12天前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
12天前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。
|
11天前
|
存储 安全 索引
Python学习的自我理解和想法(8)
这是我在B站千锋教育学习Python的第8天,主要内容是元组。元组是一种不可变的序列数据类型,用于存储一组有序的元素。本文介绍了元组的基本操作,包括创建、访问、合并、切片、遍历等,并总结了元组的主要特点,如不可变性、有序性和可作为字典的键。由于开学时间紧张,内容较为简略,望见谅。
|
6月前
|
存储 NoSQL Redis
Python—操作redis的一些心得
Python—操作redis的一些心得
30 0
|
存储 NoSQL 数据库
|
存储 NoSQL Redis
|
缓存 NoSQL Linux
python3操作redis
redis也被称为缓存 1.redis是一个key-value存储系统,没有ForeignKey和ManyToMany的字段. 2.在redis中创建的数据彼此之间是没有关系的,所以也被称为是非关系型数据库 3.它支持存储包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)等数据类型。
1193 0
|
22天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!