第三章 字符串

来源:互联网 发布:知乎 不能修改提问 编辑:程序博客网 时间:2024/06/05 00:40

3、1 基本字符串操作

字符串是不可变的。类似以下的分片赋值是不合法的

>>>website='http:www.python.org'>>>website[3:]='com'

报错

3.2、字符串格式化
在%的左侧放置一个字符串,而右侧放置希望格式化的值。

>>>format = "hello,%s,%s enough for ya?">>>values =('world','Hot')>>>print format % valuesHello,world,Hot enough for ya?

格式化字符串的%部分称为转换说明符,它们标记了需要插入转换值的位置。S表示会被格式化为字符串——如果不是字符串,则会用str将其转换为字符串。

如果要格式化实数,可以使用f说明符类型同时提供所需要的精度:一个句点再加上希望保留的小数位数。

>>>format="Pi with three decimals:%.3f">>>from math import pi>>>print format % piPi with three decimas :3.142

3.3
当右操作 是元组时,其中的每一个元素都会被单独格式化,每个值都需要一个对应的转换说明符。

如果需要转换的元组作为转换表达式的一部存在,那么必须将它用圆括号括起来。

>>>‘%s plus %s equal %s%(1,2,3)'1plus 1 equals 2'

基本的转换说明符包括以下部分。
(1)%字符:标记转换说明符的开始
(2)转换标志:-表示左对齐
(3)最小字段宽度 转换后的字符串至少应该是该宽度
(4)点(.)后跟精度值,如果转换的是实数,精度 值就表示小数点位数,如果是字符串,表示最大字段宽度。

(5)转换类型
d,i 带符号的十进制整数
x 十六进制
f 十进制浮点数
s 字符串

3.3.2 字符串方法

1、find 可以在一个较长的字符串中查找子字符串。它返回子串所在位置的最左端索引。如果没有找到则返回-1.

>>>'with a moo-moo here.'.find('moo')7>>>title = "monty  Python's  Flying  Circus">>>titke.find('Monty')0

2, join 在队列中添加元素

 >>>seq = [1,2,3,4] >>>seq = '+' >>>seq.join(seq)错误>>>seq = ['1','2','3']>>>sep.join(seq)'1+2+3'

添加的队列元素都必须是字符串

3,lower 返回字符串的小写字母版

>>>'Tro'.lower()tro

4, replace 返回某字符串的所有匹配项均被替代之后得到字符串

>>>'This is a test '.replace('is','eez')'Theez eez a test'

5 ,split 将字符串分割成序列

>>>'1+2+3'.split(‘+’)['1','2','3']

6,strip 返回去除两侧(不包括内部)空格的字符串
当strip(‘x’)去除指定字符。

原创粉丝点击