1.文本文件操作
题目描述:编程新建一个名为test.txt文件,存放在代码文件所在目录中,并且打开该文件。然后写入如图1-1所示内容到文件中。最后分别读取5个字符、读取第一行字符串、读取第三行的字符串,读取所有字符串。如图1-2所示。
提示:使用文件操作函数open()、write()、read()、readline()、readlines()、seek()、tell()、close()。
f = open("text.txt","w+")
for i in range(1,6):
f.write("chriswpf"+str(i)+"\n")
f.close()
fp1 = open("text.txt",'r')
print("读5个字符是:"+fp1.read(5))
fp1.seek(0)
print("读第一行字符串是:"+fp1.readline())
fp1.seek(fp1.tell()*2)
print("读第三行字符串是:"+fp1.readline())
fp1.seek(0)
print("读所有行字符串是:")
for i in range(1,6):
print(fp1.readline()[:-1],end=' ')
fp1.close()
2.CSV文件操作
题目描述:编程新建一个名为test.csv文件,存放在代码文件所在目录中,并且打开该文件。然后写入如图2-1所示内容到文件中。最后读取所有文件数据,如图2-2所示。
提示:import csv #csv是内建模块,直接使用
#写入数据
import csv
f = open(r"test.csv",'w',newline='')
list1 = [[1,2,3],[4,5,6],[7,8,9]]
csv_writer = csv.writer(f)
csv_writer.writerows((list1))
f.close()
#粘贴
fp1 = csv.reader(open(r"test.csv",encoding='utf-8'))
for line in fp1:
print(line)
3.Excel文件操作
题目描述:编程新建一个名为test.xls文件,存放在代码文件所在目录中,并且打开该文件。然后通过xlwt模块写入如图3-1所示内容到文件中。最后通过xlrd模块读取所有文件数据,如图3-2所示。
提示:安装xlrd读模块,如图3-3,安装xlwt写模块,如图3-4。
import xlrd #Excel读模块
import xlwt #Excel写模块
#(1)创建并打开文件
f=open("test1.xls","w+")#w+: 文件不存在,则创建;文件存在,则新内容覆盖
#(2)写入内容
f.write("学号 "+"\t"+"姓名"+"\t"+"性别"+"\t"+"年龄"+"\t"+"班级"+"\n") #表头
sid=["2018001","2018002","2018003","2018004","2018005"]
sname=["张珊","李斯","王武","赵柳","吴鹏飞"]
ssex=['女','男','男','女','男']
sage=[18,19,18,19,18]
sclass=["计算机1801","计算机1802","计算机1801","计算机1802","计算机1801"]
for i in range(5):
f.write(sid[i]+"\t"+sname[i]+"\t"+ssex[i]+"\t"+str(sage[i])+"\t"+sclass[i]+"\n")
f.close()
#(3)读取文件-使用普通方法读取
f=open("test1.xls","r")#r:读模式
f.seek(0) #定位到第0号行位置 一行字符长度11个(含换行字符2个字节)
print(f.readline(),end='')#读第一行表头
f.seek(0,1)#将当前位置设置为起点字符
fs=f.readlines() #读其他行内容
for line in fs:
print(line,end='')#去掉换行字符,空格隔开
f.close
4.Word文件操作
题目描述:编程新建一个名为test.doc文件,存放在代码文件所在目录中,并且打开该文件。然后写入如图4-1所示内容到文件中。最后分别读取5个字符、读取第一行字符串、读取第三行的字符串,读取所有字符串。如图4-2所示。
提示:使用文件操作函数open()、write()、read()、readline()、readlines()、seek()、tell()、close()。
f = open('test.doc','w+')
for i in range(1,6):
f.write("华中农业大学"+str(i)+'\n')
f.close()
fp1 = open('test.doc','r')
print("读6个文字:"+fp1.read(6))
fp1.seek(0)
print("读第一行文字是:"+fp1.readline())
fp1.seek(fp1.tell()*2)
print("读第三行文字是:"+fp1.readline())
fp1.seek(0)
print("读所有行文字是:")
for i in range(1,6):
print(fp1.readline()[:-1],end=' ')
fp1.close()