Python之文件管理
1.文件读取:
导入模块:import codecs
打开文件实例:
#!/usr/bin/env python
# -*- coding:utf8 -*-
# @Time : 2017/10/27 9:57
# @Author : hantong
# @File : file.pyimport codecs
f = codecs.open('1.txt',encoding="utf-8") #建议字符集设定,不设定有时候会出现乱码
txt1 = f.read()
print(txt1)
f.close()这样可以读取文件所有内容,如果想要按行读取,则使用readline和readlines
# readline读取一行即停止,光标处在文件末尾,readlines则是逐行读取所有内容,并且生成一个list
代码如下:
f = open('1.txt')
t1 = f.readline()
print(t1)
f.close()
结果只显示文件第一行
f = open('1.txt')
t2 = f.readlines()
print(t2)
f.close()
结果如下:
['11111\n', '222\n', 'ggg\n', 'eeerr\n', 'jjjj'] 生成了一个列表
如果要读取下一行,可以使用next,用法与readline一样,不在详说。
2.新建写入文件
写入内容到文件,使用write
代码如下:
import codecs
f = codecs.open('2.txt','w')
f.write('hello world\n')
f.write('hello world one\n')
f.write('hello world two\n')
f.write('hello world three\n')
print(f)
f.close()
这样就可以新建2.txt文件,并写入以上内容,代码模式与read一样
3.with的用法
细心的同学都会发现,上面代码每次结尾都会使用f.close()关闭文件,这样会比较容易出现忘记写这行语句的情况,这样的话文件其实一直是打开状态的,为了避免出现这样的情况,那么with就应运而生了。
代码如下:
with open('2.txt') as f:
t2 = f.read()
print(t2)
这样就可以操作2.txt这个文件了.无需再写f.close()关闭文件,每次操作之后会自行关闭。