Python(五)字符串
一、字符串类型
1、普通字符串
s1 = 'adf\nsd'
print s1
print type(s1)
2、原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。原始字符串除在字符串的第一个引号前加入字母“r”(不区分大小写)以外,与普通字符串有着完全相同的语法。
3、Unicode字符串:只需在定义字符串时前面加一个字符u
二、换行和转义
1、 \ 续航符,也就是多行语句符号
2、\\ 反斜杠符,
3、\' 单引号
4、\'' 双引号
5、\a 响铃
6、\b 退格(Backspace)
7、\e 转义
8、\000 空
9、\n 换行
10、\v 纵向制表符
11、\t 横向制表符
12、\r 回车
13、\f 换页
14、\oyy 八进制yy代表的字符,例如:\o12代表换行
15、\xyy 十进制yy代表的字符,例如:\x0a代表换行
16、\other 其他字符以普通格式输出
三、字符串运算
+ 字符串连接
* 重复输出字符串
[]通过索引获取字符串中的字符
[:]截取字符串中的一部分
in 成员运算符
not in 成员运算符
r/R 原始字符串
% 格式化字符串
四、字符串格式化
%c 格式化字符串及其ASCII码
%s 格式化字符串
%d 格式化整数
%u 格式化无符号整型
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数,可指定小数点后的位数,默认保留小数点后6位
%e 用科学技术法格式化浮点数
%E 作用同%e,用科学技术法格式化浮点数
%g %f和%e的简写
%G %f和%E的简写
%p 用十六进制数格式化变量的地址
五、常用的字符串操作
1、基本函数
strip( )函数
可以将字符串的左右空格\t等空白内容去除,该函数可以将字符串的左右两边的空格、\t等空白内容或指定字符串去除,并返回处理后的结果,但原字符串并未被改变。
不带参数的strip( )函数,表示把S中前后所有的空白字符全部去掉,包括’\n’,’\t’,’\r’,’ ’ ’等不可见字符串,可以理解为把S前后空白字符串替换为None;带参数的strip( )函数表示将S前后制定字符串chars去掉。
(1) >>> s='boy boy boy'
>>> print s.strip('')
boy boy boy
(2)>>> s='*boy boy boy*'
>>> print s.strip('*')
boy boy boy
(2)Istrip( )
可以将字符串的左边空格\t等空白内容去除
>>> s='*boy boy boy*'
>>> print s.lstrip("*")
boy boy boy*
(3)rstrip( )
可以将字符串右边空格\t等空白内容去除
>>> print s.rstrip("*")
*boy boy boy
2、字符串操作-大小写互换
(1)lower( )函数:将字符串转变为小写;
print 'S'.lower( )
(2)upper( )函数:将字符串转变为大写;
Print ’s’.upper( )
(3)swapcase( )函数:将字符串的大小写互换;
print 's'.swapcase()
(4)capitalize( )函数:将字符串的首个字母转换为大写;
print 'abc'.capitalize()
(5)capwords( )函数:将字符串中的每个单词首字符转换为大写
String.capwords(S)
3、字符串对齐
ljust(width,[fillchar])函数:输出width字符,S左对齐,不足的部分用fillchar填充,默认的为空格。
(1)s='123abc'
print s.ljust(10,'*')
rjust(width,[fillchar])右对齐
(2)s='123abc'
print s.rjust(15,'*')
Center( ):中间对齐
(3)s='123abc'
print s.center(15,'*')
zifil():填充
(4)s='123abc'
print s.zfill(20)
3、字符串的搜索
find( ):可在指定字符串范围内查找子字符串出现的位置
find(subset,[str,[end]])#返回S中出现的substr的第一个字母的标号,如果S中没有substr则返回-1。start和end作用就相当于在S[start:end]中搜索
index( )函数
index()函数:可在指定字符串范围内查找字符串出现的位置,找不到则返回错误
rfind()函数:可在指定字符串范围内查找字符串出现的位置
rindex()函数:可在右侧指定字符串范围内查找子字符串出现的位置,找不到报错
4、字符串的替换
replace()函数:实现替换字符串的指定内容
expandtabs()函数:可以将tab替换为指定的空格数量
5、字符串的分割
split():可以用指定字符串将字符串进行分割
6、字符串的连接
S.join()函数:将列表拼接为字符串
7、常见字符串的测试
startswith()函数:判断字符串是否以某个字符串为开头
endswith()函数:判断字符串是否以某个字符串结尾
in: 判断字符串中是否有某个字符串
isalpha():该函数的作用是,如果S中所有的字符都是由字符组成,并且S至少有一个字符,则返回True,否则返回False.
isalnum():如果S中所有的字符都是由字母或数字组成,并且S至少有一个字符,则返回True,否则返回False
isdigt():判断字符串都是由数字组成
isspace():判断S中所有的字符都是由空格组成。
islower():判断s中所有的字母都是小写,并且s至少有一个字母,则返回True.
isupper():判断s所有的字母都是大写,并且s至少有一个字母。
istitle():判断s中所有单词拼写首字母是否为大写字母,其他为小写字母,并且S至少有一个字母,则返回True
8、常用的字符串的映射
maketrans()函数:返回一个256个字符组成的翻译表,其中from中的字符被一一对应地转换成to,所以from和to必须是等长的
translate()函数:使用上面的函数产后的翻译表,把s进行翻译,并把deletechars中有的字符删掉。需要注意的是,如果S为unicode字符串,那么就不支持deletechars参数
9、常用的字符串的解码和编码判断类型
encode()函数:
decoded()函数:
10、判断类型
isinstance():判断是否为该种类型
11、ASCII码与字符互换
ord()函数:转换为ASCII码数
chr()函数:转换为字符
12、数字型字符串类型转换
字符串转整型、浮点型等,都是由具体的函数的,但是这些函数都是string模块中的,所有在使用的时候,需要引入string模块(import string).但是,这种转换的字符串必须是数字型的字符串,字母、特殊符号等是不行的。
string.atoi(s,[base])
13、字符串出现次数的统计
count()函数:用于在字符串范围内进行次数统计
14、字符串的综合练习