【python】文件操作

一、普通文件基础概念

  1. open 函数

先用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写

file = open(“foo.txt”, “w”)//参数为:文件名,以何种方式打开

  1. write函数

write()方法可将任何字符串写入一个打开的文件,write()方法不会在字符串的结尾添加换行符(’\n’)

file.write( “Hello Python!\n”)

  1. read函数

read()方法从一个打开的文件中读取一个字符串

str = file.read(13)

在这里,被传递的参数是要从已打开文件中读取的字节计数。该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。

  1. readlines函数

readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表,该列表可以由 Python 的 for… in … 结构进行处理。如果碰到结束符 EOF 则返回空字符串。返回列表,包含所有的行。

flist=f.readlines()//获取文件总行数

  1. writelines函数

writelines() 方法用于向文件中写入一序列的字符串。这一序列字符串可以是由迭代对象产生的,如一个字符串列表。换行需要制定换行符 \n。

str = [“world\n”]
file.writelines( str )

  1. close()方法

File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。 当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。用 close()方法关闭文件是一个很好的习惯。

file.close()

二、Excel文件

首先,我们使用的是xlsxwriter模块,需要先安装。打开命令提示符,用pip进行安装。
我们到达Python 安装的路径,执行命令即可:

pip install xlsxwriter #python2
pip3 install xlsxwriter #python3

出现这个界面就是安装成功。
在这里插入图片描述

  1. 创建工作簿

workbook = xlsxwriter.Workbook(‘demo1.xlsx’)#创建一个excel文件

  1. 创建工作表

worksheet = workbook.add_worksheet(‘first_sheet’)

  1. 给单元格赋值

worksheet.write(0,0,‘Hello’)
worksheet.write(‘A2’,‘wold’)

  1. 给行赋值

worksheet.write_row(2,0,[1,2,3,4,5,6])//第2行,从0位置开始赋值

  1. 给列赋值

worksheet.write_column(‘F2’,[‘a’,‘b’,‘c’,‘d’])//给F2列赋值

  1. 关闭表格,必须要写,否则不保存表格信息

workbook.close()

二、例题

(一)创建文件,修改文件

题目: 创建一个文本文件 Py7-1.txt。内容为“ 秦时明月汉时关 , 秦时明月汉时关 。 但使龙城飞将在,不教胡马度阴山。”保存在当前目录中 ,使用 writelines() 方法将第二句“ 秦时明月汉时关” 改为“ 万里长征人未还”。
(1)我们先创建文件,写入诗句:

def main():
    #写入
    file=open("Py7-1.txt","w")
    file.write("秦时明月汉时关,\n秦时明月汉时关。\n但使龙城飞将在,\n不教胡马度阴山。\n")
    file.close()
main()

打开文件
在这里插入图片描述
(2)再对数据进行修改,我采取的是最笨的办法,就是通过readlines()得到文件的行数,行数通过列表保存着,再修改列表的第二行即可,最后将列表通过writelines()写入。

def main():
    #写入
    file=open("Py7-1.txt","w")
    file.write("秦时明月汉时关,\n秦时明月汉时关。\n但使龙城飞将在,\n不教胡马度阴山。\n")
    file.close()
    #修改
    file=open("Py7-1.txt","r")
    line=file.readlines()#读取行数
    line[1]="万里长征人未还\n"#对第二行修改
    file=open("Py7-1.txt","w")
    file.writelines(line) #把列表插入文件

main()

打开文件
在这里插入图片描述

(二)向Execl文件写入信息

题目: 将下列数据 输入到 到 ex06.xlsx 文件中。
S09 ,女,89.2 ,88.4 ,86 ,87.9
S10 ,女,90.5 ,86.3 ,87 ,87.9
S11 ,男,88.7 ,89.4 ,89 ,89.0

必须要先安装xlsxwriter模块,之后:
(1)我们先创建文件和表格,再按照行赋值
(2)最后关闭即可。

import xlsxwriter

# 创建Excel表格helloExcel.xlsx
workbook = xlsxwriter.Workbook('ex06.xlsx')
#添加工作表
worksheet = workbook.add_worksheet('first_sheet')


# 按照行写入数据
worksheet.write_row(0,0,['S09','女',89.2,88.4,86,87.9])
worksheet.write_row(1,0,['S10','女',90.5,86.3,87,87.9])
worksheet.write_row(2,0,['S11','男',88.7,89.4,89,89.0])

# 关闭并保存表格内容
workbook.close()

最后该目录下就会有一个excel文件,打开为:
在这里插入图片描述

加油哦!💪。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值