python从0开始学习(十二)

目录

前言

1、字符串的常用操作

2、字符串的格式化

[2.1 格式化字符串的详细格式(针对format形式)](#2.1 格式化字符串的详细格式(针对format形式))

​编辑

总结


前言

上一篇文章我们讲解了两道关于组合数据类型的题目,本篇文章我们将学习新的章节,学习字符串及正则表达式。

1、字符串的常用操作

下面用程序进行测试:

python 复制代码
s1='HelloWorld'
s2=s1.lower()#转小写
print(s1,'\n'+s2)
print()

s3=s1.upper()#转大写
print(s3)
print()

#字符串的分割
e_mail='pxy@qq.com'
lst=e_mail.split('@')
print('邮箱名',lst[0],'邮箱服务器名',lst[1])

#统计子串出现的次数
print(s1.count('o'))
print()

#字符串的检索操作
print(s1.find('o'))
print(s1.find('p'))
#上面通过find查找,下面通过index查找
print(s1.index('o'))#注意,使用index查找的时候,找不到的话就会报错,但用find找没找到会返回-1不会报错
print()

#判断前缀和后缀的操作
print(s1.startswith('H'))
print(s1.startswith('P'))

print('demo.py'.endswith('.py'))
print('text.txt'.endswith('.txt'))

字符串操作除了上述操作外,还有:

程序进行测试:

python 复制代码
s="HelloWorld"
#字符串的替换
s1=s.replace('o','你好')
print(s1)
print()

#字符串在指定的宽度范围内居中
print(s.center(20,'*'))#第一个参数是指定居中的宽度,第二个参数是指定未填充的部分填充什么,默认为空格。
print()

#去掉字符串左右的空格
s='     hello    world    '
print(s.strip())#去掉左右的空格
print(s.lstrip())#去掉左侧的空格
print(s.rstrip())#去掉右侧的空格
print()

#去掉指定的字符
s3='dl-Helloworld'
print(s3.strip('ld'))#取出字符中的ld和dl,这里去除的内容不考虑顺序,且只去掉左右两侧,中间出现不去除
print(s3.lstrip('ld'))#取出左侧的ld,与顺序无关
print(s3.rstrip('ld'))#去除右侧的ld,与顺序无关

2、字符串的格式化

字符串格式化有三种方式:

下面使用程序进行讲解:

python 复制代码
#1)使用占位符进行格式化
name='马冬梅'
age=18
score=98.5
print('姓名:%s,年龄:%d,成绩:%.1f' %(name,age,score))#由于我们前面定义的三个变量类型不同,所以不能直接用加号连接,因此我们使用了占位符进行链接
print()

#2)使用f-string
print(f'姓名:{name},年龄:{age},成绩:{score}')
print()

#3)使用字符串的format方法
print('姓名:{0},年龄:{1},成绩:{2}'.format(name,age,score))#这里的{0}、{1}、{2}对应的是format后面的元素索引,可以进行改变,只需要在format后面也同时进行调整即可,如下
print('姓名:{2},年龄:{1},成绩:{0}'.format(score,age,name))

2.1 格式化字符串的详细格式(针对format形式)

适用代码进行讲解:

python 复制代码
s='helloworld'
print('{0:*<20}'.format(s)) #字符串显示宽度为20,左对齐,空白部分用*填充
print('{0:*>20}'.format(s)) #右对齐
print('{0:*^20}'.format(s)) #居中对齐
print()

#千位分隔符(只适用于整数和浮点数)
print('{0:,}'.format(987654321))
print('{0:,}'.format(987654321.987))
print()

#浮点数小数部分的精度
print('{0:.2f}'.format(3.1415926))
#字符串类型,表示的是最大的显示长度
print('{0:.5}'.format('helloworld'))
print()

#整数类型
a=425
print('二进制:{0:b},  十进制:{0:d},  十六进制:{0:x},  十六进制:{0:X}'.format(a))
print()

#浮点数类型
b=3.1415926
print('{0:.2f},  {0:.2E},  {0:.2e},  {0:.2%}'.format(b))

总结

本篇文章先将到这,关于字符串生息的内容将在下一篇文章中讲解。本篇文章主要讲解了字符串的常用操作以及字符串的格式化,希望对你有所帮助。

相关推荐
欧叶冲冲冲2 小时前
Python常见数据结构的CRUD(LeetCode高频版速查)
数据结构·python·leetcode
钱栈up2 小时前
Mac 开发机一键发版不用切环境:我这样改造了团队的后端部署脚本Maven编译卡住20分钟?我靠两步定位到2处隐蔽编译错误
开发语言·python·macos
CSND7402 小时前
DeepSeek Harness实测+入门教程
人工智能·python
gb42152872 小时前
ai中agent,skill Package,skill,tool,prompt,mcp等等概念的关系
python
淼澄研学3 小时前
Python实战:基于LangChain与Chroma构建企业级RAG知识库问答系统
开发语言·python·langchain
辰辉创聚3 小时前
In Vivo抗体是什么?| 体内抗体与普通科研抗体的区别
人工智能·python·时序数据库·in vivo抗体·体内抗体·体内级抗体
深圳市宝华视联3 小时前
Python 读取 IP 视频流简单 Demo
python·嵌入式硬件·opencv·网络协议·tcp/ip·实时音视频·嵌入式实时数据库
慧福堂3 小时前
偏印详解:十神中的智慧与孤影,如何善用偏印成就人生
大数据·学习·学习方法·八字·风水
2601_949950633 小时前
成绩提升不靠盲目刷题:用练题簿找准真正的薄弱知识点
学习·小程序·刷题·小程序推荐
步十人3 小时前
DeepRead-项目介绍
学习