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()关闭文件,每次操作之后会自行关闭。