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

python--005--文件操作

时间:2019-05-26 18:22:10      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:mil   bsp   操作系统   line   pre   class   文件操作   读写   txt   

1. 文件处理流程:

 1)打开文件,得到文件句柄并赋值给一个变量
2)通过句柄对文件进行操作(读、写、追加等)
3)关闭文件

#========文件处理读操作=========

ps:文件名为 尘粒.txt
f=open(尘粒,r,encoding=utf-8)     #python3自动使用utf-8,但是open函数会遵从操作系统的编码
# data=f.read()   #这个读完后,光标会到最后,再次readline会为空
# print(data)
print(第一行,f.readline(),end=‘‘)   #end=‘‘加上这个就去掉了最后的换行
print(第2行,f.readline())
f.close()

output:
第一行 hello你好
第2行 djdhudjddkdkdd

 

f=open(尘粒,r,encoding=utf-8)
data=f.readlines()
print(data)
f.close()

output:
[hello你好\n, djdhudjddkdkdd\n, 222\n, 444\n, \n]


#========文件处理写操作=========
注: f.writelines([‘777\n‘,‘888\n‘,1])   # 文件内容只能是字符串,只能写字符串,这样写会报错
f=open(尘粒,w,encoding=utf-8)  #使用w会覆盖写
#f.read()
f.write(11111\n)  #注意换行符需要自己加,不会自动加
f.write(22222\n)
f.write(你好\n444\n666\n)
print(f.writable())   #是否可写
# f.writelines([‘777\n‘,‘888\n‘,1])#文件内容只能是字符串,只能写字符串
f.close()

output:
True

尘粒.txt:
11111
22222
你好
444
666

#========文件处理追加操作=========

f=open(尘粒,a,encoding=utf-8)
f.write("写到最后")
f.close()

尘粒.txt:
11111
22222
你好
444
666
写到最后

打开文件的模式有:
r:只读模式
w:只写模式 (注意会覆盖写)
a:追加模式
r+:读写【可读,可写】
w+:写读【可写,可读】
a+:

#==========r+ 读写模式============
注:r+ 来写文件,文件没有修改,全是覆盖,光标在哪,就从哪里写
f=open(尘粒,r+,encoding=utf-8)
f.write("r+模式")
f.close()

#文件没有修改,全是覆盖,光标在哪,就从哪里写,所以这个例子,会覆盖前面的字符为 r+模式

尘粒.txt:
r+模式2222
你好
444
666
写到最后



#==========练习============、
#eg:将源文件修改部分内容后,写入新文件
src_f=open(尘粒,r,encoding=utf-8)
data=src_f.readlines()
src_f.close()
print(data)

dst_f=open(尘粒,w,encoding=utf-8)
#dst_f.writelines(data)
dst_f.write(data[0])
dst_f.close()

output:
[r+模式2222\n, 你好\n, 444\n, 666\n, 写到最后]
尘粒.txt:
r+模式2222


#=======with======

#利用with就可以不用f.close了,系统自动帮忙close
with open(a.txt,w)as f:
    f.write(11111\n)

output:
11111

# src_f=open(‘尘粒‘,‘r‘,encoding=‘utf-8‘)
# dst_f=open(‘尘粒_new‘,‘w‘,encoding=‘utf-8‘)\
#with打开两个文件
with open(尘粒,r,encoding=gbk)as src_f,open(尘粒_new,w,encoding=gbk)as dst_f:
    data=src_f.read()
    dst_f.write(data)

尘粒.txt:
r+模式2222

尘粒_new.txt:
r+模式2222


python--005--文件操作

标签:mil   bsp   操作系统   line   pre   class   文件操作   读写   txt   

原文地址:https://www.cnblogs.com/jinf/p/10926493.html

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