1.字符串的数据类型
@ 1.字符串赋值
a = 'string'
a = "string"
@ 2.字符串索引和切片
a[0] @ = 's'
a[-1] @ = 'g'
@ 3.字符串切片
a[0:2] @ = "str"
a[:2] @ = "str"
a[3:] @ = "ing"
@ 4.字符串操作
a + "abc" @ = "stringabc"
3*a @ = "stringstringstring"
len(a) @ = 6
'ABC'.encode('ascii')
'中'.encode('utf-8')
2.列表
列表的好处是它们比字符串更通用,字符串总是字符,而列表可以是任意对象的序列
aList = [1,'str',4,'abc']
3.字符串表示和消息编码
ord("a") @ = 97 字符转换编码
chr(97) @ = a 编码转换字符
4.字符串的方法
myString = "Hello, string methods!"
myString.split() @ = ['Hello,','string','methods!']
myString.split(',') @ = ['Hello','string methods!'] 按逗号拆分
eval('stringExpression') @ 将字符串当做语句处理
s.capitalize() @ 只有第一个字符大写的s 的副本
s.center(width) @ 在给定宽度的字段中居中的s 的副本
s.count(sub) @ 计算s 中sub 的出现次数
s.find(sub) @ 找到sub 出现在s 中的第一个位置
s.join(list) @ 将列表连接到字符串中,使用s 作为分隔符
s.ljust(width) @ 类似center,但s 是左对齐
s.lower() @ 所有字符小写的s 的副本
s.lstrip() @ 删除前导空格的副本
s.replace(oldsub,newsub) @ 使用newsub 替换s 中的所有出现的oldsub
s.rfind(sub) @ 类似find,但返回最右边的位置
s.rjust(width) @ 类似center,但s 是右对齐
s.rstrip() @ 删除尾部空格的s 的副本
s.split() @ 将s 分割成子字符串列表
s.title() @ s 的每个单词的第一个字符大写的副本
s.upper() @ 所有字符都转换为大写的s 的副本
5.列表的方法
append 方法可以在列表末尾添加一项。这通常用于每次一项地构建列表。下面是一段代码,创建了前100 个自然数的平方的列表:
squares = []
for x in range(1,101):
squares.append(x*x)
6.类型转换函数
float(<expr>) 将expr 转换为浮点值
int(<expr>) 将expr 转换为整数值
str(<expr>) 返回expr 的字符串表示形式
eval(<string>) 将字符串作为表达式求值
7.文件处理
在Python 中使用文本文件很容易。第一步是创建一个与磁盘上的文件相对应的文件对象。这是用open 函数完成的。通常,文件对象立即分配给变量,如下所示:
<variable> = open(<name>, <mode>) @ mode = r\w
现在我们可以利用文件对象infile 从磁盘读取numbers.dat 的内容。Python 提供了三个相关操作从文件中读取信息:
<file>.read() 将文件的全部剩余内容作为单个(可能是大的、多行的)字符串返回。
<file>.readline() 返回文件的下一行。即所有文本,直到并包括下一个换行符。
<file>.readlines() 返回文件中剩余行的列表。每个列表项都是一行,包括结尾处的换行符。
要询问用户打开文件的名称,可以使用askopenfilename 函数。它在tkinter.filedialog 模块中。在程序的顶部,需要导入该函数:
from tkinter.filedialog import askopenfilename
例如,要获取用户名文件的名称,我们可以使用一行代码,如下所示:
infileName = askopenfilename()
Python 的tkinter 提供了一个类似的函数asksaveasfilename,用于保存文件。它的用法非
常相似。
from tkinter.filedialog import asksaveasfilename
...
outfileName = asksaveasfilename()