冬西

导航

8,文件操作

f = open(“文件的路径”,"r(w,a)",encoding='utf-8') 

r:只读,不能够写

data = f.read()#读全部,只能读一次,想读第第二次需要调整光标

print(f.tell()):告诉你光标的位置

f.seek(0):将光标移动到指定位置

f.readline()#读一行

读多行用for循环,可以加判断读任意行

f.readlines()#将文件转化成列表的形式,每一行为一个列表元素

.strip()去掉空格和换行符

for index,line in enumerate(f.readlines())#将列表的下标取出,然后判断哪行不打印

for line in f:一行一行的读,这时f是一个迭代器,这时自己加一个计数器,这时最高效的

w:新建一个文件,文件名存在会将原来的内容删除,然后写入新的东西,慎用,

f.write('\n') 换行需要加‘\n’

f.flush() 将写的内容立刻写入硬盘,以免断电

a;追加,不会删除文件的原来内容,只在后面接着写

进度条:

import sys

import time

    for i in range(50):

    sys.stdout.write("#")

    sys.stdout.flush() time.sleep(0.5)

f.truncatr()无论在哪里都从开头开始截断

f = open('文件路径','r+',encoding='utf-8')

r+:可以读,无论光标在哪里只能在最后追加

w+:写读模式,重新创建一个文件,存在就覆盖,也只能在后面追加,

a+:追加读

rb:二进制读,网络传输,

wb: 二进制写

文件的修改:

两种方法:第一种,将文件全部读取到内存中,修改,然后再写回原文件中,这种不适合打得文件

第二种方法:使用循环,将文件一行行读出并判断,找到要修改的地方修改,然后写到新文件中,

使用字符串replace方法,或者直接给给line赋值,注意每行的换行符\n

 

posted on 2018-06-23 21:55  冬西  阅读(113)  评论(0编辑  收藏  举报