Python基础编程(三)使用字符串
来源:互联网 发布:怎样做淘宝分销商 编辑:程序博客网 时间:2024/05/16 18:54
3.1 基本字符串操作
所有标准的序列操作(索引、分片、乘法、判断成员资格、求长度、取最小值和最大值)对字符串同样适用。但是,记住字符串都是不可变的。
3.3 字符串格式化
字符串格式化使用字符串格式化操作符即百分号%来实现。
在%的左侧放置一个字符串(格式化字符串),而右侧则放置希望格式化的值。
>>> format = "Hello. %s. %s enough for ya?">>> values = ('word','Hot')>>> print(format % values)Hello. word. Hot enough for ya?格式化字符串的%s部分称为转换说明符,他们编辑了需要插入转化值的位置。
如果右操作数是元组的话,则其中的每一个元素都会被单独格式化,每个值都需要一个对应的转换说明符。
>>> '%s plus %s equals %s' % (1,1,2)'1 plus 1 equals 2'(1)%字符:标记转换说明符的开始。
(2)转换标志(可选):” - “ 表示左对齐;” + “ 表示在转换值之前要加上正负号;” “ (空白字符)表示正数之前保留空格;0 表示转换值若位数不够则用0填充。
(3)最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。如果是 * ,则宽度会从值元组中读出。
(4)点( . )后跟精度值(可选):如果转换的是实数,精度值就表示出现在数点后的位数。如果转换的是字符串,那么该数字就表示最大字段宽度。如果是 * ,那么精度将会从元组中度出。
(5)转换类型:
d,i 带符号的十进制整数 o 不带符号的八进制 u 不带符号的十进制 x 不带符号的十六进制(小写) X 不带符号的十六进制(大写) e 科学计数法表示的浮点数(小写) E 科学计数法表示的浮点数(大写) f.F 十进制浮点数 g 如果指数大于-4或者小于精度值则和e相同,其它情况与f相同 G 如果指数大于-4或者小于精度值则和E相同,其它情况与F相同 c 单字符(接受整数或者单字符字符串) r 字符串(使用repr转换任意python对象) s 字符串(使用str转换任意python对象)可以使用 * (星号)作为字段宽度或者精度(活着了两者都使用 * ),此时数值会从元组参数中读出:
>>>'%.*s' % (5.'Guido van Rossum')'Guido'在字段宽度和精度值之前还可以放置一个“标表”,该标表可以是零、加号、减号和空格。零代表数字将会用零填充。
>>>'%010.2f' % pi'0000003.14'注意,在010中开头的那个0并不意味着字段宽度说明符为八进制,它只是个普通的Python数值。当使用010作为字段宽度说明符的时候,表明字段宽度为10,而且用0进行填充补位,而不是说字段宽度为8。
3.4 字符串方法
3.4.1 find
find方法可以再一个较长的字符串中查找子字符串。它返回子串所在位置的最左端索引。如果没有找到返回-1。
>>>'With a moo-moo here. and a moo-moo there'.find('moo')7这个方法还可以接受可选的起始点和结束点参数:
>>>subject = '$$$ Get rich now!!! $$$'>>>subject.find('$$$')0>>>subject.find('$$$'. 1)#只提供起始点20>>>subject.find('!!!')16>>>subject.find('!!!'. 0. 16)#提供起始点和结束点-1注意,由起始和终止值指定的范围包含第一个索引,但不包含第二个索引。
3.4.2 join
join方法是非常重要的字符串方法,它是split方法的逆方法,用来在队列中添加元素:
>>>seq = >>>'1+2+3+4+5'.split('+')['1','2','3','4','5']>>>'/usr/bin/env'.split('/')['','usr','bin','env']
3.4.5 split
这是一个非常重要的字符串方法,它是join的逆方法,用来将字符串分割成序列:
>>>seq = '+'>>>sep.join(seq)#连接字符串列表'1+2+3+4+5'>>>dirs = '','usr','bin','env'>>>'/'.join(dirs)'/usr/bin/env'
注意,如果不提供任何分隔符,程序会吧所有空格作为分隔符(空格、制表、换行等)。
3.4.3 lower
lower返回字符串的小写字母版。
3.4.4 replace
replace方法返回某字符串的所有匹配项均被替换之后得到的字符串。
>>>'This is a test'.replace('is','eez')'theez eez a test'
3.4.6 strip
strip方法返回去取两侧(不包括内部)空格的字符串:
>>>' internal whitespace is kept '.strip()'internal whitespace is kept'也可以指定需要去除的字符,将它们列为参数即可。这个方法只会去除两侧的字符。
3.4.7 translate
translate方法和replace方法一样,可以替换字符串中的某些部分,但是和前者不同的是,translate方法只处理单个字符。它的优势在于可以同时进行多个替换,有时候比replace效率高得多。
在使用translate转换之前,需要先完成一张转换表。转换表中是以某字符替换某字符的对应关系(可以使用string模块里的maketrans函数进行)。
创建这个表以后,可以将它用作translate方法的参数,进行字符串的转换。
translate的第二个参数是可选的,这个参数是用来指定需要删除的字符。
0 0
- Python基础编程(三)使用字符串
- Python 基础编程 -- 字符串 (三)
- Python基础(三) Python字符串
- python--基础学习(三)字符串单引号、双引号、三引号
- python--基础学习(三)字符串单引号、双引号、三引号
- Python基础--使用字符串
- Python基础学习教程(三)之字符串的秘籍
- python基础(三)字符串的常见操作
- python笔记三-使用字符串
- python 基础3 使用字符串
- Python 基础(三)
- Python基础(三)
- Python基础(三)
- python基础(三)
- python核心编程(二&三)— python简介&Python基础
- c#经典编程实例(三字符串的使用)
- java基础(三),字符串
- Swift基础(三)字符串
- Oracle SID在本机上已经存在,请指定一个不同的SID”的解决办法
- 转: 深入分析Java ClassLoader原理
- ALM11 OTA API接口的问题
- WinScp工具
- pthread_kill()和pthread_cancel()的用法
- Python基础编程(三)使用字符串
- 第十二周上机实践项目——长颈鹿类对动物类的继承(private继承方式下)
- Lua模块化开发
- 2014.5.13
- 转载和积累系列 - java中Keytool的使用总结
- esxi服务器集群 nginx tengine 的使用
- 项目一
- 1. 结构
- Excel VBA:数据管理与维护