统计单词在一段文本中出现的频率:
这里用空格分开每个单词。
文件的操作
分析一下:
首先读整个文件的写法,因为无论要对文件内容进行什么操作,都需要先打开这个文件:
open()函数会在这个文件所在的目录中寻找对应文件名的文件,打开它。
open()函数还有另外的一个参数表示对文件的处理方式。例如”r”表示只读模式,”w”表示只写模式,等等。如果不指定对文件的操作方式,那么默认的操作方式是只读方式。
这里有一点要注意就是如果是写入”w”模式操作有的时候,如果要写入的文件名称不存在,系统就会自己创建这个文件,如果存在,在系统返回文件对象之前会清空文件。
python将内容写入文件的时候,只能是将字符串类型的值写入文件,所以在写入文件之前,非字符串类型的值需要先转换成字符串类型。
操作方式”a”表示不覆盖掉原来的内容,而是在原来内容结尾后继续写入新的内容。
open()函数返回的是一个文件对象,as给这个对象取一个别名。
|
|
读取了内容之后,我们按照每行打印输出:
在这里我们得到的结果中每行之间多了一个空行,因为每一行后面都有一个看不到的换行符,我们使用 rstrip()函数来去除这个换行符。
函数rstrip()的作用就是删除字符串末尾的空白。
函数read()是将文本的所有的内容都读出来返回一个字符串类型的值。
函数readlines()是将文本的所有内容按行读取,并且将每一行作为一个元素存储到一个列表中。
与rstrip()函数对应,strip()函数是用来去除每一行前面的空格的作用。
collections
collections是Python内建的一个集合模块,提供了许多有用的集合类。
关于这个模块另起一篇去描述。
附件
open中不同的参数对应不同的操作类型
文件打开的类型 | 表示的含义 |
---|---|
“rt” | 只读打开一个文本文件,只允许读数据 |
“wt” | 只写打开或建立一个文本文件,只允许写数据 |
“at” | 追加打开一个文本文件,并在文件末尾写数据 |
“rb” | 只读打开一个二进制文件,只允许读数据 |
“wb” | 只写打开或建立一个二进制文件,只允许写数据 |
“ab” | 追加打开一个二进制文件,并在文件末尾写数据 |
“rt+” | 读写打开一个文本文件,允许读和写 |
“wt+” | 读写打开或建立一个文本文件,允许读写 |
“at+” | 读写打开一个文本文件,允许读,或在文件末追加数据 |
“rb+” | 读写打开一个二进制文件,允许读和写 |
“wb+” | 读写打开或建立一个二进制文件,允许读和写 |
“ab+” | 读写打开或建立一个二进制文件,允许读和写 |