码迷,mamicode.com
首页 > 其他好文 > 详细

文件操作

时间:2019-12-19 09:18:21      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:模式   lines   数据   pen   含义   开头   文件   默认   二维   

文件打开:<变量名>=open(<文件名、文件路径>,<打开模式>)
文件关闭:<变量名>.close()
文件的打开模式:
‘r’:只读模式,默认值,如果文件不存在,返回FileNotFoundError
‘w’:覆盖写模式,文件不存在则擦黄健,存在则完全覆盖
‘x’:创建写模式,文件不存在则创建,存在则返回FileExistError
‘a’:追加写模式,文件不存在则创建,存在则在文件最后追加内容
‘b’:二进制文件模式
‘t’:文本文件模式,默认值
‘+’:与r/w/x/a一同使用,在原来功能基础上增加同时读写功能
文件内容的读取:
<f>.read(size=-1):读入全部内容,如果给出参数,读入前size长度
<f>.readline(size=-1):读入一行内容,如果给出参数,读入该行前size长度
<f>.readlines(hint=-1):读入文件所有行,以每一行元素形成列表,如果给出参数,读入前hint行
文件内容的写入:
<f>.write(s):向文件中写入一个字符串或字节流
<f>.writelines(lines):将一个元素全为字符串的列表写入文件
<f>.seek(offest):改变当前文件操作指针的位置,offest含义:0-文件开头、1-当前位置、2-文件结尾
一维数据:由对等关系的有序或无序数据构成,采用线性方式组织(对应列表,数组和集合等概念)
二维数据:由多个一维数据构成,是一维数据的组合形式(表格是典型的二维数据)
多维数据:由一维或二维数据在新维度上扩展形成
一维数据的表示:
1)如果数据间有序:使用列表类型
2)如果数据间无序:使用集合类型
一维数据的读入处理:从空格分隔的·文件中读入数据:
txt=open(fname).read()
ls=txt.split()
f.close()
一维数据的写入处理:
txt=open(fname,"w")
ls=["王圆圆","王小源","源崽崽"]
txt.write(" ",join(ls))
f.close()
二维数据的读入处理:
fo=open(fname)
ls=[]
for line in fo:
line=line.replace("\n","")
ls.append(line.split(","))//以逗号分隔是因为文件中的元素是以逗号来分隔的
fo.close()
二维数据的写入操作:
fi=open(fname,"w+")
ls=[[],[],[]]
for i in ls:
fi.write(" ".join(i)+"\n")
fi.close()
二维数据的逐一处理:
ls=[[1,2],[3,4],[5,6]]
for row in ls:
for col in row:
print(col)

文件操作

标签:模式   lines   数据   pen   含义   开头   文件   默认   二维   

原文地址:https://blog.51cto.com/14232274/2459592

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!