TXT类文件处理

简述
open() 方法用于打开一个文件,并返回file对象。对文件整个处理过程中都需要使用到这个函数,所以一般会将其赋值给某变量(比如f),接下来的处理调用file对象的多种方法,比如f.write(str)、f.close()......
 
open() 函数常用形式是接收两个参数:open(file, mode)。file是必须的,mode不是必须的默认为r只读,也许还有其它具有默认值的参数。
 
file可以是相对路径,也可以是绝对路径,注意右键文件复制路径生成的'\'要改为'/'。
相对路径如"/Desktop/1.txt",绝对路径如"C:/Users/Python/Desktop/1.txt"。
 
处理结束后一定要关闭文件对象,即调用close()方法。
 
 
代码示例
open("C:/Users/Python/Desktop/1.txt", "a").write( "Python 是一个非常好的语言。\n的确非常好!!\n" )
open("C:/Users/Python/Desktop/1.txt", "a").close()
 
上述的常用写法是:
f = open("C:/Users/Python/Desktop/1.txt", "a")         #注意右键文件复制路径生成的'\'要改为'/'
f.write( "Python 是一个非常好的语言。\n的确非常好!!\n" )
f.close()
 
with用法看起来更规整:
with open("C:/Users/Python/Desktop/1.txt", "a+") as f:
    f.write( "Python 是一个非常好的语言。\n的确非常好!!\n" )
f.close()        #也可以写成f.closed
 
 
常用的mode
r     以只读方式打开文件。文件的指针(可以认为是光标)将会放在文件的开头。
w    只用于写入。如果文件存在则从头开始编辑,原有内容会被删除。如果不存在,创建新文件。
a    只用于追加。如果文件存在则从尾开始编辑,原有内容不会被删除。如果不存在,创建新文件。
a+  用于读写和追加。如果文件存在则从尾开始编辑,原有内容不会被删除。如果不存在,创建新文件。
 
 
常用的file对象函数
file.read(size)   从文件光标处读取size长度的数据。size是int类型,空缺表示光标后的所有内容被读取返回。
f.write(string)    将 string 写入到文件中。
f.close()           关闭文件并释放系统的资源。
f.seek(offset, from)  改变文件的光标位置:
seek(x,0) : 从文件开头往后移动x个字符
seek(x,1) : 从当前位置往后移动x个字符
seek(-x,2):从文件结尾往前移动x个字符
 
 
注意
可以用for循环返回每一行
f = open("/tmp/foo.txt", "r")
for i in f:
    print i
f.close()
 
f.seek()好像只和file.read()捆绑使用。
 
如果先read后write,写入就不生效,不明白原因!
而且write前的read还必须指定size,否则报错!
f=open("C:/Users/Python/Desktop/3.txt", "a+") 
f.read(5)
f.write('555')
f.closed
 
 
posted @ 2019-10-29 10:03  数之美  阅读(367)  评论(0编辑  收藏  举报