python基本数据类型之字符串(二)
python基本数据类型之字符串(二)
替换方法
python中字符串的替换方法主要有:center、rjust\ljust、expandtabs、format\format_map(格式化)、strip、rstrip\lstrip、replace和zfill。其中最重要的两个方法是replace和format。
1、replace
replace方法是用新子串替换原来字符串中的子串。
该方法有3个参数——replace(old, new, count),其中old是指原字符串中的子串;new是用来替换的新子串;count=None是默认参数,指定需要替换的子串个数,默认为None表示替换全部子串。
s = 'xiangfeiepo, haqishipugai'
v = s.replace('i','*')
print(v)
打印结果:
x*angfe*epo, haq*sh*puga*
当指定count时:
s = 'xiangfeiepo, haqishipugai'
v = s.replace('i', '*', 2)
print(v)
打印结果:
x*angfe*epo, haqishipugai
其中count也可以赋值为True或False。当赋值为True时,表示只替换第一个子串;当赋值为False时,表示不进行替换。
这一点涉及到了python中的类型转换。python中任何类型都可以转换为bool型,对于int类型来说,True为1,False为0。
2、center、rjust、ljust
这3个方法是用来调整字符串的对齐方式,center是居中对齐,rjust/ljust分别是右对齐和左对齐。
3个方法都需要2个参数——center(width, fillchar=None),width用来指定将字符串扩展至多少个字符,fillchar指定了其余位置用什么字符来进行填充。fillchar是默认参数,默认值None表示用空格进行填充。
s = 'YeYeYe'
v = s.center(20, '*')
v1 = s.rjust(20, '*')
v2 = s.ljust(20, '*')
print(v)
print(v1)
print(v2)
打印结果:
*******YeYeYe*******
**************YeYeYe
YeYeYe**************
如上所示,center将原字符串置于字符串中央,用指定字符将原字符串填充至20个字符。rjust将原字符串置于最右边(ljust将字符串置于最左边),并将左边(右边)用指定字符填充。
3、expandtabs
expandtabs方法是将字符串中的tab(\t)替换成空格。用具体的例子可以更好地理解该方法:
s = "haowefnowg\tahufebg\tadbge\tabdoane3"
v = s.expandtabs(6)
print(v)
打印结果如下:
haowefnowg ahufebg adbge abdoane3
expandtabs(6)表示程序会以6个字符为单位对原字符串进行截取。首先截取第一个6位(字符)——"haowef",该6位子串中没有\t,因此照原样输出;继续截取6个字符的子串,"nowg\t"这其中存在\t,因此,\t前面的字符会按原样输出,\t被替换成了2个(6-4=2)空格。照此规律继续截取下面的字符并进行替换。
该方法可以将原来字符串中的\t替换成若干个空格。expandtabs方法一般用来将用户的输出制作成表格进行输出:
s = '用户名\t密码\t邮箱\nguyexiangyun\t123456\tguyexiangyun@163.com\n'
v = s.expandtabs(30)
print(v)
打印结果:
用户名 密码 邮箱
guyexiangyun 123456 guyexiangyun@163.com
4、strip、rstrip、lstrip
这3个方法是用来删除字符串中的指定字符。strip删除字符串两端的指定字符,而rstrip\lstrip分别是用来删除字符串右端和左端的字符。
这3个方法仅有一个默认参数chars=None,用来指定要删除的字符。默认是删除字符串首尾的非打印字符,包括空格、制表符和换行符。
并且strip方法对字符串的匹配遵循优先最多匹配原则,即优先对字符个数最多的子串进行匹配
s = 'jeojfowei djw je'
v = s.strip('je')
v1 = s.rstrip('je')
v2 = s.lstrip('jeo')
print(v)
print(v1)
print(v2)
打印结果:
ojfowei djw
jeojfowei djw
fowei djw je
当字符串两端不存在指定字符时,strip方法会返回原字符串。
5、zfill
该方法用来扩展字符串,其余位置将由0来填充。并且0会被填充在字符串的左边(右对齐)。
s = 'dashidafei'
v = s.zfill(20)
print(v)
打印结果:0000000000dashidafei
6、format和format_map
这两个方法用来格式化字符串,其中设置格式的方式有很多种。具体参见《字符串的格式化》
python基本数据类型之字符串(二)的更多相关文章
- python基本数据类型之字符串(四)
python基本数据类型之字符串(四) 判断方法 python中有一类用来判断字符串形式的方法,该类方法有两个特点:(1)方法名都是is开头(除了startswith和endswith):(2)返回值 ...
- Python基础数据类型之字符串
Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >> ...
- python基本数据类型之字符串(五)
python基本数据类型之字符串(五) 遍历与查找 python中的字符串属于可迭代对象,通过一些方法可以遍历字符串中的每一个字符.而查找的方法主要有两个:find与index. 1.字符串的遍历 字 ...
- python基本数据类型之字符串(三)
python基本数据类型之字符串(三) 转换和判断方法 在python中,有一些内置方法可以将字符串转化特定形式,而与之对应的一些方法可以判断字符串是否符合某些形式.因此,在这篇文章中,笔者把转换方法 ...
- python自学笔记(二)python基本数据类型之字符串处理
一.数据类型的组成分3部分:身份.类型.值 身份:id方法来看它的唯一标识符,内存地址靠这个查看 类型:type方法查看 值:数据项 二.常用基本数据类型 int 整型 boolean 布尔型 str ...
- Python基本数据类型之字符串、数字、布尔
一.数据类型种类 Python中基本数据类型主要有以下几类: Number(数字) String(字符串) Bool (布尔) List(列表) Tuple(元组) Sets(集合) Diction ...
- python的数据类型之字符串(二)
字符串常见操作 如有字符串mystr = 'hello xiaose',以下是常见的操作 1.find 检测某个字符串是否包含在 mystr中,如果是返回开始的索引值,否则返回-1 格式:mystr. ...
- python基本数据类型:字符串及其方法(二)
格式化类 方法join() #join()用指定字符每间隔拼接字符串 name='miku' name1=' '.join(name) print(name1) 方法center() #center( ...
- Python开发——数据类型【字符串】
字符串定义 字符串是一个有序的字符的集合,用于存储和表示基本的文本信息 在Python中加了引号的字符,都被认为是字符串! 单引号.双引号.多引号之间的区别? 答案:单双引号没有区别 多引号的作用? ...
随机推荐
- Vue中table合并单元格用法
<table> <tr> <th>地名</th> <th>结果</th> <th>人名</th> < ...
- 概念吓死人的webservice
前倾提要:这是我七拼八凑,自己用手打出来的头一篇了!都是别人的想法,我抄袭的,我坦白,我这只是总结一下觉得有用的 本来题目想叫(1)REST API 和WebService(2)REST 样式和 SO ...
- C# 操作符 << 与 >>
1.<< 左移操作符: 左移操作符,将第一个操作数向左移动第二个操作数指定的位数,空出的位置补0.左移相当于乘. 左移一位相当于乘2;左移两位相当于乘4;左移三位相当于乘8. 如:x< ...
- 清除UIWebView缓存
//清除cookies NSHTTPCookie *cookie; NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCook ...
- 【原创】python嗅探QQ消息实战
目录 需求分析 选型 设计与流程 实现过程 结果展示 1 需求分析 在一些业务场景中需要拿到IM上的通信记录来做一些数据分析,例如对QQ平台中的消息进行领域分类等. 2 选型 环境与工具: pyt ...
- mongodb mongod 启动参数
我们可以通过mongod --help查看mongod的所有参数说明,以下是各参数的中文解释. 基本配置 –quiet# 安静输出 –port arg# 指定服务端口号,默认端口27017 –bind ...
- java DES加解密及Wrong key size错误
如下的DES加密方法会报错:Wrong key size public static String encryptDES(String source) throws Exception{ Secret ...
- Unity网格合并_材质合并
[转]Unity网格合并_材质合并 原帖请戳:Unity网格合并_材质合并 写在前面: 从优化角度,Mesh需要合并. 从换装的角度(这里指的是换形状.换组成部件的换装,而不是挂点型的换装),都需要网 ...
- Django_Form验证(二),ajax验证
还是一个简单的html提交页面,ajax提交就不需要form表单了: <p><input id="a" type="text" name=&q ...
- psdTohtml
https://github.com/anjorweb/fastHtml fastHtml 一个简单的psd直接导出html的工具 自己工作常用整理 适合单页面且采用DOM结构布局的H5页面,基于Ca ...