python中对文件的操作

这篇博客介绍了Python中如何进行文件操作,包括使用内置函数`open`打开文件,详细解释了文件的打开模式如`r`, `w`, `rb`, `wb`等。同时,重点讲解了CSV文件的读取和写入,使用`csv`模块的`reader`、`DictReader`、`writerow`和`writerows`等方法进行操作。" 126134536,8207985,Matlab模拟时间变化热导率计算与可视化,"['分子动力学', 'Lammps', 'Matlab编程', '热传导', '模拟计算']
摘要由CSDN通过智能技术生成

 

文件的打开和关闭

使用内置函数open打开文件

open函数主要参数介绍:

def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)

file:需打开文件的路径

mode:文件打开方式,默认为 r ,表示只读

 encoding:是用于解码或编码文件的编码的名称

 

注:

  • open函数会返回一个文件对象
  • 在windows中,默认使用gbk编码格式打开文件

实例:

# 因为写文件使的编码方式用的是 utf-8, 所以encoding='utf-8',否则会出现UnicodeDecodeError错误
file = open('cc.txt', encoding='utf-8')
print(file.read())

# 关闭文件
file.close()

 

文件打开方式

注意:

  • 以 r 方式打开,文件不存在会报错
  • 以 w 方式打开,会覆盖文件内容。如果文件不存在,会新建文件
  • rb:以二进制方式读 , rb+:以二进制方式,可读可写
  • wb:以二进制方式写 , wb+:以二进制方式,可读可写

 

文件读取方式

  • read(), 读取文件的所有内容
  • readline(), 读取一行数据
  • readlines(), 读取所有数据,保存到一个列表中
file = open('cc.txt', encoding='utf8')
print(file.readlines())
file.close()

 

csv文件的读写

csv的全称是Comma-Separated Values,意思是逗号分隔值。是以纯文本显示表格数据的文件

读取csv文件

读写csv文件需要用到 python 内置的模块 csv 模块。

  • 读取csv文件一般使用 csv模块里的 reader 方法,该方法接收一个可迭代对象(比如 csv文件),然后返回一个生成器。

实例:

import csv

file = open('info.csv', encoding='utf8')
obj = csv.reader(file)
for data in obj:
    print(data)
file.close()

  • 使用 DictReader类,使用方法同reader, 但他会把每一个单元的数据放入一个字典中,列名:单元格数据
import csv

file = open('info.csv', encoding='utf8')
obj = csv.DictReader(file)
for data in obj:
    print(data)
file.close()

 

csv文件的写入

  • 使用writerow函数写入单条数据,使用writerows写入多条数据
import csv

file = open('info.csv', encoding='utf8', mode='w', newline='')
dd = csv.writer(file)
# 写入一条数据
data = ['姓名', '年龄', '性别']
dd.writerow(data)
# 写入多条数据
data2 = [['张三', '19', '男'],
         ['李四', '20', '男']
         ]
dd.writerows(data2)
file.close()

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值