码迷,mamicode.com
首页 > 编程语言 > 详细

Python 文件操作

时间:2018-02-10 21:57:05      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:字符   enc   odi   gpo   bin   encoding   stdout   存在   文本   

1.打开文件:

#!/usr/local/bin/python3.5

filename = "fileop1.file"

fd = open(filename, a, encoding=utf-8)    #模式默认是读模式

‘‘‘
另外一种打开文件方式
with 方式 当with代码块执行完毕时,内部会自动关闭并释放文件资源
‘‘‘
with open(filename, r) as fd:
    ...

 

2.文件打开模式

 默认是只读方式

r            # 以只读方式打开文件(默认)

w            # 以写入的方式打开文件,会覆盖已存在的文件

x            # 如果文件已经存在,使用此模式打开将引发异常

a            # 以写入模式打开,如果文件存在,则在末尾追加写入

b            # 以二进制模式打开文件

t            # 以文本模式打开(默认)

+            # 可读写模式(可添加到其他模式中使用)

U            # 通用换行符支持

r  只读,r+ 读写,不创建 

 

w 新建只写,w+ 新建读写,二者都会将文件内容清零

a,a+  附加方式打开  a:附加写方式打开,不可读;a+: 附加读写方式打开

w+与r+区别:

r+:可读可写,若文件不存在,报错;w+: 可读可写,若文件不存在,创建;

r+与a+区别:

 

r+默认指针位置会覆写之前存在内容

 

不可读的打开方式:w和a

 

若不存在会创建新文件的打开方式:a,a+,w,w+

 

 

3.文件读写操作

 fd.read()
 fd.write()

 逐行读取:

for line in fd:
    print(line)    #把文件转换成了迭代器,不会让数据一直放在内存里,比较安全高效

 操作文件读写指针:

f.tell()        #返回指针的位置
f.read(n)       #读n个,指针也移动多少
f.seek()        #0 返回文件初始

4.flush方法

f.flush()    #强制刷新到硬盘
#进度条方法:
import sys,time
for i in range(10):
    sys.stdout.write("#")
    sys.stdout.flush()
    time.sleep(0.1)

5.truncate方法

f.truncate(n)  #从头截断n个字符,其余删掉

 

Python 文件操作

标签:字符   enc   odi   gpo   bin   encoding   stdout   存在   文本   

原文地址:https://www.cnblogs.com/yangdadahome/p/8282482.html

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