python字符串的一些常见实用操作


Posted in Python onApril 06, 2022
目录

切片——str[start:end]

str1 = ' python str '
#切片
print(str1[3:6])   # str[start:end](下标从 0 开始)从下标为start开始算起,切取到下标为 end-1 的元素,切取的区间为 [start, end)
print(str1[2:8:2]) # str[start:end:step],取 [start, end) 之间的元素,每隔 step 个取一个
print(str1[2:9:2])

tho
yhn
yhns

字符串长度——len(str)

str1 = "aBCd Efgh ijK LmN"
print(len(str1))   # 返回字符串的长度

17

重复字符串 ——1、str * n,2、n * str

#重复字符串   1、str * n,2、n * str, n为一个 int型的数字
str1 = ' python str '
print(str1*2)
print(3*str1)

python str python str
python str python str python str

查找某个字符 or 某个字符子串在不在原字符串中

1、in 关键字

#  in 关键字
str1 = ' python str '
print('p' in str1)
print('py' in str1)
print('py' not in str1)

True
True
False

2、find函数

# str.find(str, start=0, end=len(string))  如果包含子字符串返回开始的索引值,否则返回-1。
str1 = ' python str '
str2 = "python"
print(str1.find(str2))
print(str1.find(str2, 1))
print(str1.find(str2, 5))

1
1
-1

3、index函数

# str.index(str, start=0, end=len(string))  如果包含子字符串返回开始的索引值,否则抛出异常。
str1 = ' python str '
str2 = "python"
print(str1.index(str2))
print(str1.index(str2, 1))
print(str1.index(str2, 5))

1
1Traceback (most recent call last):
File “E:/李明/pycharmProject/深度学习入门/main.py”, line 27, in
print(str1.index(str2, 5))
ValueError: substring not found

4、rfind函数

str11 = " python str  python str "
str2 = "python"
print(str11.rfind(str2))
print(str11.rfind(str2,10,len(str11)))   #  str.rfind(substr, start,end) 类似于 find()函数,不过是从右边开始查找.

5、rindex函数

str11 = " python str  python str "
str2 = "python"
print(str11.rindex(str2))  #  str.rindex(substr, start,end)类似于 index(),不过是从右边开始.
print(str11.rindex(str2,10,len(str11)))

字符串中某字符(子字符串)的数量——str.count(sub, start= 0,end=len(string))

str = "li hua shi ge huai hai zi"
print(str.count('i', 0, 15))   # str.count(sub, start= 0,end=len(string))
print(str.count('i'))
print(str.count('shi'))

2
5
1

去除空格——str.strip()、str.lstrip()、str.rstrip()

str1 = ' python str '
print (str1)   
print (str1.strip())     # 去首尾空格
print (str1.lstrip())    # 去左侧空格
print (str1.rstrip())    # 去右侧空格

结果:

python字符串的一些常见实用操作

分割字符串——str.split()

str1 = '1 , 2 , 3 , 4 , 5'
print (str1.split())      # 默认使用空格分隔
print (str1.split(' '))    # 指定使用空格进行分隔,首尾如果有空格,则会出现在结果中
print (str1.split(','))    # 指定其他字符串进行分隔,指定,分割
print (str1.split('3 ,'))  # 指定  3 , 分割

[‘1’, ‘,’, ‘2’, ‘,’, ‘3’, ‘,’, ‘4’, ‘,’, ‘5’]
[‘1’, ‘,’, ‘2’, ‘,’, ‘3’, ‘,’, ‘4’, ‘,’, ‘5’]
['1 ', ’ 2 ', ’ 3 ', ’ 4 ‘, ’ 5’]
['1 , 2 , ‘, ’ 4 , 5’]

以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 次

str1 = '1 , 2 , 3 , 4 , 5'
print (str1.split(','))    # 指定其他字符串进行分隔,指定,分割
print (str1.split(',',3))

['1 ', ’ 2 ', ’ 3 ', ’ 4 ‘, ’ 5’]
['1 ', ’ 2 ', ’ 3 ‘, ’ 4 , 5’]

替换字符串——str.replace(old, new, max)

# str.replace(old, new, max)  字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
str1 = "li hua shi ge huai hai zi,li hua shi ge huai hai zi"
print(str1.replace("ai", "PL"))
print(str1.replace("ai", "PL", 3))

li hua shi ge huPL hPL zi,li hua shi ge huPL hPL zi
li hua shi ge huPL hPL zi,li hua shi ge huPL hai zi

判断字符串是否以指定前缀、后缀结尾

是否是指定前缀——str.startswith(str, start=0,end=len(string))

# str.startswith(str, start=0,end=len(string)),检查字符串[start,end)以指定子字符串开头,如果是则返回 True,否则返回 False
str1 = "this is string example....wow!!!"
print(str1.startswith('this'))      
print(str1.startswith('is', 2, 4))    
print(str1.startswith('his', 1, 3))

True
True
False

是否是指定后缀——str.endswith(suffix, start, end)

# str.endswith(suffix, start, end),检查字符串[start,end)以指定后缀结尾,是返回True,否则返回False
str1 = "this is string example....wow!!!"
str2 = "wow!!!"
print (str1.endswith(str2))        # True
print (str1.endswith(str2,20))      # True
str2 = "is"
print (str1.endswith(str2, 2, 4))   # True
print (str1.endswith(str2, 2, 6))   # False
print (str1.endswith(str2, 2, 7))   # True

True
True
True
False
True

将字符串的第一个字母变成大写,其他字母变小写——str.capitalize()

str1 = "aBCd Efgh ijK LmN"
print(str1.capitalize())  # 将字符串的第一个字母变成大写,其他字母变小写

Abcd efgh ijk lmn

转换字符串中所有大写字符为小写,将字符串中的小写字母转为大写字母——str.lower()、str.upper()

str1 = "aBCd Efgh ijK LmN"
print(str1.lower())   # 转换字符串中所有大写字符为小写
print(str1.upper())  # 将字符串中的小写字母转为大写字母

abcd efgh ijk lmn
ABCD EFGH IJK LMN

对字符串的大小写字母进行转换——str.swapcase()

str1 = "aBCd Efgh ijK LmN"
print(str1.swapcase())  # 对字符串的大小写字母进行转换

AbcD eFGH IJk lMn

返回字符串 str 中最小(大)的字母 ( ASCII码比大小)——max(str)、min(str)

str1 = "aBCd Efgh ijK LmN"
print(max(str1))   # 返回字符串 str 中最大的字母
print(min(str1))   # 返回字符串 str 中最小的字母  此实例是空格最小 ASCII码

m
  (空格最小)

把字符串的每个单词首字母大写——str.title()

str1 = "aBCd Efgh ijK LmN"
print(str1.title())   # 把字符串的每个单词首字母大写

Abcd Efgh Ijk Lmn

检测字符串组成

检测数字——str.isdigit()、str.isnumeric()、str.isdecimal()

str1 = "123456"
print(str1.isdigit())    # 检测字符串是否只由数字组成
print(str1.isnumeric())  # 检测字符串是否只由数字组成,这种方法是只针对unicode对象
print(str1.isdecimal())  # 检查字符串是否只包含十进制字符。这种方法只存在于unicode对象

检测字母——str.isalpha()

str1 = "abcd"
print(str1.isalpha())   # 检测字符串是否只由字母组成

检测字母和数字——str.isalnum()

str1 = "123456abcd"
print(str1.isalnum())   # 检测字符串是否由字母和数字组成

检测其他

str.isspace()   # 检测字符串是否只由空格组成
str.islower()   # 检测字符串是否由小写字母组成
str.isupper()   # 检测字符串中所有的字母是否都为大写
str.istitle()   # 检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写

这几个就不举例子了

填充字符串 (左填充、右填充、居中填充)——str.rjust(width)、str.rjust(width)、str.rjust(width)

str1 = "abcd"
print(str1.ljust(10))   # str.rjust(width)  返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
print(str1.rjust(10))   # str.rjust(width)  返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
print(str1.center(10))   # str.rjust(width)  返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

abcd      
       abcd
    abcd    

把字符串分割成三部分,子字符串前的、子字符串、子字符串后的——str.partition(substr)、str.rpartition(substr)

str1 = "abcdefghijklmnabcdefghijklmn"
str2 = "efg"
print(str1.partition(str2))  # str.partition(substr) 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。
print(str1.rpartition(str2))  #类似于 partition()函数,不过是从右边开始

(‘abcd’, ‘efg’, ‘hijklmnabcdefghijklmn’)
(‘abcdefghijklmnabcd’, ‘efg’, ‘hijklmn’)

join函数

# str.join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
str = '-'
seq = ("a", "b", "c"); # 字符串序列
print(str.join(seq))  # 'a-b-c'

a-b-c

总结

到此这篇关于python字符串的一些常见实用操作的文章就介绍到这了,更多相关python字符串操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 面向对象 成员的访问约束
Dec 23 Python
Python中subprocess模块用法实例详解
May 20 Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 Python
深入理解Python中的*重复运算符
Oct 28 Python
浅谈python中的占位符
Nov 09 Python
简单实现python聊天程序
Apr 01 Python
在Pycharm中自动添加时间日期作者等信息的方法
Jan 16 Python
Python使用import导入本地脚本及导入模块的技巧总结
Aug 07 Python
Python 点击指定位置验证码破解的实现代码
Sep 11 Python
Python-jenkins 获取job构建信息方式
May 12 Python
Python魔术方法专题
Jun 19 Python
Python语法学习之进程的创建与常用方法详解
Apr 08 Python
python中字符串String及其常见操作指南(方法、函数)
Apr 06 #Python
Python Numpy库的超详细教程
进行数据处理的6个 Python 代码块分享
Apr 06 #Python
 分享一个Python 遇到数据库超好用的模块
Apr 06 #Python
Python利用capstone实现反汇编
关于Python中进度条的六个实用技巧分享
如何在Python中妥善使用进度条详解
Apr 05 #Python
You might like
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
?生?D片??C字串
2006/12/06 PHP
php网页后退不再出现过期
2007/03/08 PHP
PHP正则表达式替换站点关键字链接后空白的解决方法
2014/09/16 PHP
php显示指定目录下子目录的方法
2015/03/20 PHP
PHP使用socket发送HTTP请求的方法
2016/02/14 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
2016/05/19 PHP
浅谈PHP无限极分类原理
2019/03/14 PHP
prototype Element学习笔记(篇二)
2008/10/26 Javascript
javascript高级学习笔记整理
2011/08/14 Javascript
用js写了一个类似php的print_r输出换行功能
2013/02/18 Javascript
基于JavaScript实现移动端TAB触屏切换效果
2015/10/20 Javascript
分享经典的JavaScript开发技巧
2015/11/21 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
js验证手机号、密码、短信验证码代码工具类
2020/06/24 Javascript
jQuery鼠标悬停内容动画切换效果
2017/04/27 jQuery
vue 打包后的文件部署到express服务器上的方法
2017/08/09 Javascript
Angular2监听页面大小变化的解决方法
2017/10/09 Javascript
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
vue-cli V3.0版本的使用详解
2018/10/24 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
jquery.pager.js实现分页效果
2019/07/29 jQuery
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
2020/04/25 Javascript
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
python中关于for循环的碎碎念
2017/06/30 Python
Python爬虫之xlml解析库(全面了解)
2017/08/08 Python
Python利用Scrapy框架爬取豆瓣电影示例
2020/01/17 Python
基于Python3.7.1无法导入Numpy的解决方式
2020/03/09 Python
小学教师自我鉴定
2013/11/07 职场文书
面试后的英文感谢信
2014/02/01 职场文书
《桥》教学反思
2014/04/09 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
开展党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
仓库管理制度范本
2015/08/04 职场文书
Python中的np.argmin()和np.argmax()函数用法
2021/06/02 Python
Django框架中模型的用法
2022/06/10 Python