文件处理

#以下yesterday均为处理文件的文件名
#data = open("yesterday",encoding="utf-8").read() #仅限于读文件
#print(data)
'''
#写文件
f = open("yesterday2",'w',encoding="utf-8") # w 创建并覆盖原文件
f.write("i hat you>>>>>>>,\n") # \n换行
f.write("fuck >>\n")
data = f.read()
print('-----',data)

#读文件
#f = open("yesterday",'r',encoding="utf-8") #文件句柄 包含文件起始位置,内存地址,字符编码 默认读模式
#data = f.read()
#data2 = f.read() #没内容 因为上面data已经读到文件最下面了,读完了,光标对着最下面空白地方了,所以没有内容读了
#print(data)
#print("-----------------------")
#print(data2)
f.write("我爱北京天安门,\n") # \n换行
f.write("天安门上太阳升")
'''
'''
#追加文件 append
f = open("yesterday",'a',encoding="utf-8") #a append 追加 依然不能读
f.write("i hat you>>>>>>>,\n") # \n换行
f.write("fuck >>\n")
#data = f.read() 不可读
#print('-----',data) 不可读
'''
f = open("yesterday",'r',encoding="utf-8")
#print(f.readline()) #读取第一行
#print(f.readline()) #读取第二行
'''
for i in range(5):
print(f.readline()) #读取前5行
'''
#print(f.readlines()) #讲文本转换成一个列表,每一行为一个元素

#for line in f.readlines():

print(line.strip()) #strip把空格和换行都去掉

low

'''
for index,line in enumerate(f.readlines()):
if index == 9:
print("----------------------")
continue
print(line.strip())
'''
'''

high

count = 0
for line in f:
if count == 9:
print("#############")
count +=1
print(line)
count +=1
'''

f = open("yesterday2",'w',encoding="utf-8")
#print(f.tell()) #文件指针位置 按字符计
#print(f.read(50)) #只读前50个字符
#print(f.tell())
#f.seek(10) #回到第11个字符
#print(f.readline())
'''
print(f.encoding) #打印文件编码
print(f.fileno()) #返回文件在内存中的具体编号 基本不太用
print(f.name) #文件名
print(f.seekable()) #是否文件指针可移动
print(f.readable())
print(f.writable())
'''
#print(f.flush()) #缓存强制刷新 一般缓存满了写入硬盘
#print(dir(f.buffer))

#f.write("hello 34 \n")
'''
#进度条
import sys,time
#sys.stdout.write("####################") #标准化输出
for i in range(5):
sys.stdout.write("#")
sys.stdout.flush()
time.sleep(0.1)
'''
#f = open("yesterday2",'a',encoding="utf-8")
#f.seek(10)
#f.truncate(5) #多清空多少个字符
'''
f = open("yesterday2",'r+',encoding="utf-8") #既能读也能写 也没什么用
print(f.tell())
f.write("-----diao--------------\n")
f.write("-----diao--------------\n")
print(f.read())
'''
'''
f = open("yesterday2",'w+',encoding="utf-8") #写读 基本没什么用
f.readline()
f.readline()
f.readline()
print(f.tell())
f.write("-----diao--------------\n")
print(f.readline())
'''

#f = open("yesterday2",'a+',encoding="utf-8") #追加读

f = open("yesterday2",'wb') #二进制文件 读
f.write("hello ".encode())
#f.close() #关闭文件

#修改文件 内存中修改,在写入到一个新文件
'''
f = open("yesterday","r",encoding=("utf-8"))
f_new = open("yesterday.bak","w",encoding="utf-8")
for line in f:
if "等待着我最喜欢的歌曲" in line:
line = line.replace("等待着我最喜欢的歌曲","等待lei wen bin最喜欢的歌曲")
f_new.write(line)
else:
f_new.write(line)
'''

#或
f = open("yesterday","r",encoding=("utf-8"))
f_new = open("yesterday.bak","w",encoding="utf-8")
for line in f:
if "等待着我最喜欢的歌曲" in line:
line = line.replace("等待着我最喜欢的歌曲","等待lei wen bin最喜欢的歌曲")
f_new.write(line)
f.close()
f_new.close()

#with 自动关闭文件
'''
with open("yesterday","r",encoding="utf-8") as f:
for line in f:
print(line.strip()) #strip去除空格和换行符
'''

#with可打开多个文件
with open("yesterday",'r',encoding="utf-8") as f, \
open("yesterday2",'r',encoding='utf-8') as f2:
print(f.readline().strip())
print(f2.readline().strip())

转载于:https://blog.51cto.com/13707996/2306901

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值