>>>文本文件读写
*文本文件读写概述
open函数,打开文件将返回值放入一个变量(例如:f)
f.readlines() 写入文件
f.readline()读取文件一行
f.close()关闭文件
f.read()读取全部文件内容。返回一个字符串,包含文件全部内容
*创建文件并写入内容
a=open("c:\\tmp\\t.text","w")
文件夹c:\tmp必须事先存在,open不会创建文件夹
"w"表示写入,用此方法打开文件,如果文件本来存在,会被覆盖
*读取现有文件
不用上面提到的也行
f = open("c:\\tmp\\t.txt","r",encoding="utf-8")
for x in f:
print(x,end="")
f.close()
*添加文件内容:
f = open("c:\\tmp\\t.txt","a")
"a"打开文件添加内容。若文件不存在,就创建
"r":读,"rb"二进制读
"w","wb" 文本文件写、二进制文件写
"r+","rb+" 读和写、二进制文件既读又写
>>>文本文件的编码
gbk utf-8
。编码不对不能正确读文件
。ANSI对应 gbk
。写入文件时,如果不指定编码,则用操作系统的缺省编码
Windows: gbk win10开始是 utf-8 Linux,MacOs: utf-8
>>>python程序的编码
.py文件必须存成utf-8格式,才能运行
如果存成 ansi格式,则应该在文件开头写:#coding=gbk
*文件的编码
创建和读取文件时都可指定编码
outfile = open("c:\\tmp\\t.txt","w",encoding="utf-8")
#若打开文件用于写入时不指定编码,则使用系统缺省编码,win10下也可能Ansi(gbk)
*文本文件的编码
gbk编码的文件,不能用encoding = "utf-8" 来open,
utf-8编码的文件,可以用 encoding = "gbk" 来open(但read或readline,readlines读取到的信息会乱码)
>>>文件的路径
*open文件名参数的相对路径形式(不包括盘符)
和绝对路径形式(包括盘符)open("d:/tmp/test/readme.txt" ,"r")
路径也叫文件夹,或者目录
*Python程序的“当前文件夹 (当前路径,当前目录)”
? 程序运行时,会有一个“当前文件夹”,open打开文件时,如果文件名不是绝对路径形式,则都是相对于当前文件夹的。
程序可以获取当前文件夹:
import os
print(os.getcwd()) #os.getcdw()获取当前文件夹
#>>c:\tmp5\test
程序运行期间可以改变当前文件夹
在命令行方式运行程序时,cmd窗口的当前文件夹,就是程序的当前文
件夹,不论程序存在哪里。
>>>文件夹操作
os库和shutill库中的部分函数可以用来操作文件和文件夹(文件夹也称为“目录”)
删除文件夹的的递归函数(删了就不能恢复)
import os
def powerRmDir(path): #连根删除文件夹path
获取文件夹总大小的递归函数
import os
def getTotalSize(path):
>>>命令行参数
*以命令行(命令脚本)方式运行python程序(要求安装的时候勾选add python to path)
具体做法:
在命令行窗口(mac叫“终端”)敲:
python xxx.py
就能运行xxx.py
>>>文件处理实例
1.统计文章中的单词词频
2.统计多个文件累计单词频率
3.准确统计文章中的单词词频
4.对 "源文件" 进行单词词频分析,只抽取不在四级单词列表中的单词,将分析结果写入"结果文件"