文件

作者: handsomePeng | 来源:发表于2018-11-08 01:15 被阅读0次

文件操作的流程(三步)

打开——写入/读取——关闭

现有文件(夜殇)如下:

夜深阑静,
风有声而人无语,
独坐案前不能寐。
四壁皆空,
放眼无堵,
唯思想浮涨溢 于中。
奔放不羁,
犹如决堤之水,
收而不可收。
任尔所为不过往,
斯是。斯也!

基本操作:

#!/usr/bin/python3.5
# vim:set fileencoding=utf-8:
f = open('yeshang.txt')  # 打开文件
first_line = f.readline()
print('first line:', first_line)  # 读一行
print('-' * 10 + '我是分隔线' + '-' * 10)
data = f.read()  # 只要文件没读完就会继续往下读取
print(data)  # 打印文件
f.close()  # 关闭文件

------------------------------------------

f = open('yeshang.txt')  # 打开文件
content = f.read(21)  # 读取21个长度
print(content)
print('-' * 30)
content1 = f.readlines()  # 读取多行,返回列表(每个元素都是一行)
print(content1)
print('-' * 30)
content2 = f.read()  # 文件已经全部读完,没有内容可读
print(content2)
f.close()
文件打开模式

b(附件模式):以二进制字符串形式读/写文件


图解 二进制打开模式

文件方法一览表:

读取/写入文件
f = open('write.txt', mode='w')  # 只以写模式打开
content = '以写模式打开write.txt,该文件若不存在则创建。'
f.write(content)  # 写入内容
f.flush()  # 刷新缓存,写入文件
f.close()


f = open('write.txt', 'a')  # 以追加模式打开
content = '以追加模式打开文件,并在文件中追加内容'
f.write(content)
f.flush()
f.close()

f = open('write.txt', 'w+')  # 以写和读模式打开,此时以w模式写入会覆盖掉之前写入的两行内容
content = '以写和读模式打开write.txt'
f.write(content)
f.flush()
f.seek(0)  # 将光标的位置移动到文件开头
data = f.read()
print(data)
f.close()

with语句(实现自动关闭文件)
为了避免打开文件后忘记关闭,可以通过管理上下文,即:

with open('filename','r') as f :
      pass

如此方式,当with代码块执行完毕后,会自动关闭文件并释放资源。
在python2.7后,with又支持同时对多个文件进行管理,即:

with  open('filename1') as f1, open('filename2') as f2 :
        pass

相关文章

网友评论

      本文标题:文件

      本文链接:https://www.haomeiwen.com/subject/aubbxqtx.html