一、编码格式
1.Python的解释器使用的是Unicode(内存)。
2…py文件在磁盘上使用的是UTF-8(外存)。
二、文件的读写
(一)创建:open()
f = open(filename[, mode, encoding])
# f:对象
# open:函数
# filename:要创建或打开的文件名
# mode:打开模式,默认只读
# encoding:默认文本文件中字符的编码格式为GBK
f.readline()# 返回列表
(二)文件类型
1.文本文件:默认为Unicode字符集,可用记事本打开。
2.二进制文件:数据内容用字节存储,无法用记事本打开,需用专用的软件打开,如:jpg、doc等格式。
3.
符号 | 作用 |
---|---|
r | 只读,指针在文本开头 |
w | 只写,指针在开头,写入内容覆盖原内容 |
a | 追加模式,指针在开头,当有内容时,从末尾添加,指针在原文件末尾 |
b | 二进制方式打开,需与r或w一起使用(rb、wb),不可单独使用 |
+ | 以读写方式打开文件,需与其他模式一起使用,如a+ |
(三)常用方法
1.read([size]):读取size个字符,若省略[size]则为全部。
2.readline():读一行。
3.readlines():以行为间隔全部读取为一个列表。
4.write(str):将str写入文件。
5.writelines(s_list):将s_list写入文件,不添加换行符。
6.seek(offset[, whence]):把指针移动到新位置。(以字节的形式)
注:offset表示相对于whence的位置。offset为正往结束方向移动,为负往开始方向移动。whence为0表示从开头开始计算(默认值),为1从当前位置计算,为2从文件末尾开始计算。
7.tell():指针当前位置。
8.flush():缓冲区内容写入文件,但不关闭文件。
9.close():缓冲区内容写入文件,同时关闭文件,释放资源。
三、with语句
自动管理上下文资源,不论什么原因跳出with块,都能保证文件正确关闭,以此来达到释放资源的目的。
with open('a.txt', 'r') as f:
print(f.read())
四、目录操作
(一)os
import os
os.system('notepad.exe') # 打开记事本
os.system('calc.exe') # 打开计算器
# 调用可执行文件
os.startfile('C:\\Program Files\\Tencent\\QQ\\Bin\\qq.exe')
其他操作:
getcwd():返回当前工作目录。
listdir(path):返回指定路径下的文件和目录信息。
mkdir(path[, mode]):创建目录。
makedirs(path1/path2/…[, mode]):创建多级目录。
rmdir(path):删除目录。
removedirs(path1/path2…):删除多级目录。
chdir(path):将path设置为当前工作目录。
(二)os.path
abspath(path):获取文件或目录的绝对路径。
exists(path):判断文件或目录是否存在,在则返回True,否则False。
join(path, name):将目录与目录或文件名拼接。
splitext():分离文件名和扩展名,split()是分离路径和文件名。
basename(path):从目录中提取文件名。
dirname(path):从路径中提取文件路径,不包括文件名。
isdir(path):判断是否为路径。
(三)walk
遍历目录下所有文件。
import os
path = os.getcwd()
list_file = os.walk(path)
for dirpath, dirname, filename in list_file:
print(dirpath, dirname, filename)