filename='filename.txt' #先创建文件路径、名称
f=file(filename,'w')
f.close()
#创建文件方法二:直接输入文件路径、名称
#注意此处的new文件,要注意和\n转义字符冲突。
#建议路径用r'D:\new.txt'
f1=file('D:\poems.txt','w');#在
f2=file(r'D:\new.txt','w') #注意此处的r
f2.close()
f1.close()
如果文件不存在,且模式是‘a’、’w’、或’w+’时,python会在python文件目录下自动创建该txt文件;文件不存在,且模式是’r’,或‘r+’时,会出现io错误
以‘a' 模式打开文件对象,然后使用文件对象的write方法写入数据,如果追加内容没有明确写入'\n',则在文件对象末尾直接追加write方法中的内容,不另起一行。除非明确写入回车符。
在Windows和Macintosh平台上,‘b’模式以二进制方式打开文件,所以可能会有类似于‘rb’,‘wb’,‘r+b’等等模式组合。Windows平台上文本文件与二进制文件是有区别的,读写文本文件时,行尾会自动添加行结束符。这种后台操作方式对文本文件没有什么问题,但是操作JPEG或EXE这样的二进制文件时就会产生破坏。在操作这些文件时一定要记得以二进制模式打开。(需要注意的是Mactiontosh平台上的文本模式依赖于其使用的底层C库)
1. f2= open(r'E:\python\day2\test.txt','r+')
2. f2.write("python")
3.
4. print f2.read()
5. f2.close()
执行步骤2后,指针指向字符串结尾e的下一位。
执行4时,不输出任何内容。
如果要输出写入的内容,在第三行添加 f2.seek(0)即可
获取文件大小:
1.
>>> f = open('chardet-1.0.1.tgz','rb')
>>> f.seek(0,2)
>>> f.tell()
179218L
2.
>>> import os
>>> os.fstat(f.fileno()).st_size
179218L
f.flush() 清除内部缓冲区,将缓冲区内的数据写入文件。然后可以读取文件内容。
理解seek()
Userinfo.txt的内容:insert into USERINFO_ (注:后面有个空格,下划线的索引是20)
import os
f =open('userinfo.txt')
f.seek(-2,2)
print f.tell() # 20
print f.read(1)# 结果:_
print f.tell() # 21版权声明:本文为博主原创文章,未经博主允许不得转载。