第5章 文件及文件夹操作

文件操作

打开文件

open(文件路径,访问模式,encoding=编码方式) :只能打开已存在的文件,否则报错

访问模式:

  r :只读(默认)

  w :只写(覆盖)

    ~ 打开一个已经存在的文件,不存在则创建一个新的文件

    ~ w模式会覆盖之前文件中的内容

  a :只写(追加)

# 打开当前目录下文件
f = open('test.txt','w',encoding='UTF-8')
f.close()
# 打开相对路径下的文件
f = open('file/test.txt','w',encoding='UTF-8')
f.close()
# 打开绝对路径下的文件
f = open('d://test.txt','w',encoding='UTF-8')
f.close()

 

写文件

write(data) :向文件中写入字符串,文件不存在则创建

# w 模式:【只写】w模式会覆盖之前文件中的内容
fw = open('file/test.txt','w',encoding='UTF-8')
fw.write('你好')
fw.close()
# a 模式:【追加】
fa = open('test.txt','a',encoding='UTF-8')
fa.write('大家好')
fa.close()

writelines(data) :向文件中写入字符串序列(列表、元祖),文件不存在则创建

f = open('file/test.txt','w',encoding='UTF-8')
f.writelines(['张三\n','李四\n','王五\n'])
f.close()

读文件

read() :读取全部

fr = open('file/test.txt','r',encoding='UTF-8')
readall = fr.read()
print(readall)

readlines() :逐行读取全部,并将每一行返回一个列表

fr = open('file/test.txt','r',encoding='UTF-8')
# 逐行读取全部,并将每一行返回一个列表
readlines = fr.readlines()
print(readlines)

readline() :读取一行,每次读取从上一行读取的游标开始读取下一行

fr = open('file/test.txt','r',encoding='UTF-8')
# 读取一行,每次读取从上一行读取的游标开始读取下一行
readline1 = fr.readline()
readline2 = fr.readline()
print('readline1={},readline2={}'.format(readline1,readline2))

 关闭文件

# 安全打开关闭文件 - 执行完自动关闭文件
with open('file/test.txt','w',encoding='UTF-8') as f:
    f.write('你好')

文件夹操作

import os

# 创建目录 os.mkdir(path)
os.mkdir('filedir')
# 获取当前目录
path = os.getcwd()
print(path)
# 获取指定目录下的文件及文件夹列表(不获取子目录下的文件)
filelist_now = os.listdir()
filelist_path = os.listdir('../')
print('当前目录文件列表:{}\n上级目录文件列表:{}'.format(filelist_now,filelist_path))
# 删除空文件夹(删除非空文件夹报错)
os.rmdir('filedir')
import shutil

# 删除非空文件夹(空/非空文件夹均可删除)
shutil.rmtree('filedir')
# 切换目录
os.chdir('../')
new_path = os.getcwd()
print(new_path)

 

posted @ 2018-05-05 13:09  白小白001  阅读(125)  评论(0编辑  收藏  举报