《Python 学习手册4th》 第七章 字符串

时间:2024-10-20 08:37:02
'''
时间: 9月5日 - 9月30日
要求:
1. 书本内容总结归纳,整理在博客园笔记上传
2. 完成所有课后习题
注:“#” 后加的是备注内容
(每天看42页内容,可以保证月底看完此书)
“重点笔记”“本章习题” - 标题1,二级标题用- 标题2,笔记大纲标题、习题题目- 加粗,16px
'''

重点笔记:

摘要

  字符串 - 一个有序的字符的集合,用来存储和表现基于文本的信息。

一. 常见字符串常量和表达式

(列举一些重要的)

操作   解释
"a%s "% (参数名) 字符串格式化表达式
s.find('pa') 字符串方法调r用:搜索
s.rstrip 移除空格
s.replace('pa','xx') 替换
s.split(',') 用占位符分隔
s.isdigit() 内容测试
s.lower() 变为小写
s.endswith('spam') 字符串结束测试
'spam'.join(strlist) 插入分隔符
s.encode('latin-1') Unicode编码等
for x in s: print (x) 迭代
[c for c in s ] 字符串列表解析
map(ord,s)  

注:反斜杠用来引入特殊的字节编码,是转义序列

二. raw字符串抑制转义

  myfile = open (r'C:\python27\lib','w')

  等价于: myfile = open ('C:\\python27\\lib','w')

三. 实际应用中的字符串

  1. 字符码代码转换
    >>> ord('s')
    115
    >>> chr(115)
    's'2

四. 字符串方法

  

dir('s')

可以查看到字符串所有可调用的方法。

五.字符串方法实例:文本解析

>>> line = 'aaa bbb ccc'
>>> list = line.split()
>>> list
['aaa', 'bbb', 'ccc']

  字符串split方法将一个字符串分割为一个子字符串的列表,以分隔符字符串为标准。(默认分隔符为空格)

六. 字符串格式化调用方法

  

>>> import sys
>>> 'My {1[spam]} runs {0.platform}'.format(sys,{'spam':'laptop'})
'My laptop runs win32'
>>> template = '{0},{1} and {2}'
>>> template.format('I',"love",'python')
'I,love and python'

本章习题

1. 字符串find方法能用于搜索列表吗?

答:不能,find是字符串类型特定的,不能和列表类型公用。

2. 字符串切片表达式能用于列表吗?

答:能。

但唯一的差别就是当你对列表进行切片时,你得到的是新列表。

3. 你如何将字符串转成其ASCII 码?你如何反向转换,从证书转换成字符?

答:内置的ord(S)函数可将单个字符串转换成整数字符编码;

  chr(I)则是将整数代码转换成字符串。

4. 在Python中,怎么修改字符串?

答:字符串是不可变类型。但可以连接,切片运算,格式化表达式,方法调用等。

5. 已知字符串S的值为"s,pa,m",提出两种从中间抽取两个字符的方式。 

答:切片操作s[i:j],

  字符串S.strip(',')方法。( s.strip(rm)        删除s字符串中开头、结尾处,位于 rm删除序列的字符 )

6. 字符串"a\nb\x1f\000d"之中有多少字符?

答:a、\n、b、(x1f)、(000)、d