码迷,mamicode.com
首页 > 其他好文 > 详细

file的基本操作;file的修改

时间:2017-10-14 14:42:52      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:odi   lines   编码方式   文件的   音频   覆盖   strip()   文件中   str   

file的基本操作

# Author:nadech
# 文件读写/修改/
#data = open("yesterday",encoding="utf-8").read()
#这里要设置打开模式,默认是读r;
#w的时候会打开文件,把之前文件覆盖;
#a模式,append追加
import  sys,time

f = open("yesterday","r",encoding="utf-8")#f叫文件句柄,它包含了文件的名称,文件的大小,文件内存的起始位置等

#改变文件句柄的指针位置
print(f.readline())
print(f.tell())
f.seek(0)
print(f.readline())
#编码方式
print(f.encoding)
#操作系统给该文件句柄分配的编号
print(f.fileno())
# flush(),文件在执行写操作时,并不是实时写入到硬盘中的,而是当内存中缓存到一定数量之后写入,但是有些数据要求实时写入就可以用flush()强制写入

data = f.read()
print(data)

f.write("\n 我爱北京天安门,\n")
f.write("\n 你是一个大傻逼。")

print(f.readline())
print(f.readline())

#readlines只适合读小文件
for line in f.readlines():
    print(line.strip())

#只读5行
for index,line in enumerate(f.readlines()):
    print("%s:"%(index),line)

# 以上读文件的方法都可以忘记,因为上边的效率很低
# 这个方法是读入内存中一行,执行一行,而不是所有的都读到内存中
# 但是这个需要自己加一个计数器

count = 0
for line in f:
    if count == 9:
        print("——————我是分割线——————")
        count+=1

    print(line.strip())
    count+=1
for i in range(20):
    sys.stdout.write("#")
    sys.stdout.flush()
    time.sleep(0.2)
#truncate(),截断,里边的数字是从头剩下的字符数
f.truncate()


#读写,可以读,可以写,写在后边
f1 = open("yesterday2","r+",encoding="utf-8")

print(f1.readline())
print(f1.readline())
print(f1.readline())

f1.write("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
f1.write("gkukhkhkhkhkh")
#写读 w+
#追加读 a+,这两个模式不怎么使用

#rb,用来读二进制文件,但是并不是看到的01010101,是文件按照二进制处理(网络传输ftp,socket;视频文件,音频文件)
# f = open("yesterday","rb")
#wb,二进制的写

#with语句

#with open("yesterday","r",encoding="utf-8") as f:
#同时打开多个文件0
# with open("yesterday","r",encoding="utf-8"),\
#         open("yesterday","r",encoding="utf-8")

file的修改并不是直接在源文件中进行修改,而是新建文件,将要修改的内容修改掉

# Author:nadech

f = open("yesterday","r",encoding="utf-8")
f_new = open("yesterday_back","w",encoding="utf-8")

for line in f:
    if "令我笑容满面" in line:
        line = line.replace("令我笑容满面","令nadech笑容满面")
    f_new.write(line)

 

file的基本操作;file的修改

标签:odi   lines   编码方式   文件的   音频   覆盖   strip()   文件中   str   

原文地址:http://www.cnblogs.com/nadech/p/7666878.html

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