文件读写操作

流程:

1.打开文件 open("文件名",“打开的方式 读或写”)

2.操作文件 write read

3.关闭文件 close()

打开文件。

a = open("文件名,相对路径或者绝对路径","打开方式 读或写",encoding="编码\解码格式"(不写的话默认系统的编码方式))

a获取的是指向文件名的一个句柄。

seek应用:比如断点续传。

操作文件。

读取。

a.read() : 读取文件全部内容。括号中可以跟数字,读取的是字符数。

a.readline() : 读取文件一行的内容,包括结尾的换行符。

a.readlines() : 读取文件的所有行,返回一个列表,每个元素就是每行的内容,包括换行符

写入。

a.write("Hello") :把Hello写入内存中,当遇到程序结束,或者a.close()会把内容写入磁盘文件中。

a.writelines(["111\n","111\n"]) : 可以写入多行

a.flush() : 刷新,把write中的内容直接刷新到磁盘中。

a.seek() : 移动光标位置,括号中写数字,表示的是移动的字节数

a.seek(1)=a.seek(1,0):1表示光标位置,0表示以开头为准,默认为0

a.seek(3,1): 3表示光标位置,1表示以当前光标位置为准。

a.seek(-3,2): 3表示倒数第三个位置,2表示从结尾位置为准。

a.tell(): 显示当前光标的位置。

模拟输出进度条。

import sys   #系统模块

sys.stdout   #标准输出句柄,如同上面的a。

sys.stdout.write("aaaaa")  #向屏幕输出aaaaa

\r :光标回到当前行首,实现刷新输出的进度条,

\n:回车到下一行。

\t:制表符。

import time,sys

for i in range(30):
	a = i / 29
	sys.stdout.write('\r%d%%%s'%(a*100,"*"*i)) #\r让光标回到行首
	sys.stdout.flush()
	time.sleep(0.5)

关闭文件。

a.close()

如果每次都怕最后忘了写close(),那么可以用with来实现:

with open("a.txt","r",encoding="utf8") as a:#以读的方式utf8编码打开文件,句柄命名为a,下面缩进的语句都是对文件的操作。
	for i in a:
		print(i)

重命名和删除文件。

python的os模块提供了对文件的操作,如重命名和删除。

os.rename():重命名文件。

os.rename("旧文件名","新文件名")

os.remove(): 删除文件

os.remove("要删除的文件名")
posted @ 2017-04-24 16:36  高跃  阅读(265)  评论(0编辑  收藏  举报