文章目录
实验目的
- 掌握文件的读写方法以及打开关闭等基本操作;
- 培养学生动手查阅资料能力和解决实际问题的能力和团队合作能力。
一、练习文本文件的打开,关闭,读取,写入等操作
#文件的打开
<变量名> = open(<文件名>,<打开模式>)
#文件的关闭
<变量名> .close()
#这里如果文件的关闭没有写,文件始终处于打开状态,我们的程序只要退出,
#python的解释器会自动将文件关闭,但我们还是要尽可能去写关闭文件的指令
#文件的内容读取
<f>.read(size=1)
#读入全部内容,如果给出参数,读入前size长度
#文件的写入
<f>.write(s)
#向文件写入一个字符串或字节流
二、CSV格式数据的读取操作
import csv
with open("test.csv","r") as csvfile:
reader = csv.reader(csvfile)
#这里不需要readlines
for line in reader:
print(line)
三、练习word、Excel文本文件的打开,关闭,读取,写入等操作
Word的读取
import docx
#获取文档对象
file_path=r'D://123.docx'
file=docx.Document(file_path)
print("段落数:"+str(len(file.paragraphs)))#段落数
#输出每一段的内容
for para in file.paragraphs:
print(para.text)
for paragraph in file.paragraphs:
print(paragraph.text)#按表格读取全部数据
Excel的读取
# 打开文件
workBook = xlrd.open_workbook('软件学院2021级本科.xls');
# 3. sheet的名称,行数,列数
print(sheet1_content1.name,sheet1_content1.nrows,sheet1_content1.ncols);
# 4. 获取整行和整列的值(数组)
rows = sheet1_content1.row_values(3); # 获取第四行内容
cols = sheet1_content1.col_values(2); # 获取第三列内容
四、编写程序实现打开某个《蒹葭》文档,读取其中的内容,将处理后的数据分别写入a.txt、b.docx、c.xlsx三个文件中。
参考代码
# 获得四个文件的路径
import docx
import xlwt
fpath1 = r"D:\蒹葭.txt"
fpath2 = r"D:\a.txt"
fpath3 = r"D:\b.doc"
fpath4 = r"D:\c.xlsx"
# 以只读的形式打开文件fpath1
with open(fpath1, 'r') as f:
# readlines()方法,读取文件中所有行,每一行作为一个字符串存入在列表中,并且换行符用\n来表示。
# 这样我们得到了一个字符串列表,字符串列表中的每个元素代表一行内容
aaa_content = f.readlines()
# 以列表的形式打印aaa.txt中的内容
print('蒹葭.txt中的内容为:{}'.format(aaa_content))
# 以追加的形式打开文件fpath2
with open(fpath2, 'a+') as f1:
# 循环遍历蒹葭.txt中每一行的内容,写入文件遇到\n时自动换行
for i in aaa_content:
f1.write(i)
print("已成功写入txt", fpath2)
file = docx.Document()
file.add_paragraph(aaa_content)
file.save(fpath3)
print("已成功写入文档", fpath3)
# 创建一个workbook 设置编码
workbook = xlwt.Workbook(encoding='utf-8')
# 创建一个worksheet
worksheet = workbook.add_sheet('My Worksheet')
i = 0
while i < 3:
i += 1
# 参数对应 行, 列, 值
worksheet.write(i, 0, label=aaa_content)
# 保存
workbook.save(fpath4)
print("已成功写入表格", fpath4)