Python 3.12.1 (tags/v3.12.1:2305ca5, Dec 7 2023, 22:03:25) [MSC v.1937 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
f=open("FishC.txt","w") (open打开文件后,返回一个文件对象。我们这里把open函数返回的文件对象放到这个f变量里面去,回车后,文件已创建,但是在互动模式下看不到反应,需要在“开始”程序中找到Python3.xx的IDLE,在IDLE上点右键,选择“更多”,在“更多”的菜单中选择“打开文件位置”,弹出Python的文件夹窗口,但这里的几个文件都是快捷方式,在IDLE的快捷方式上点右键,弹出菜单,选择靠上方的“打开文件所在的位置”,此时打开的才是Python程序的真正安装位置“C:\Users\Administrator\AppData\Local\Programs\Python\Python312”,在这里才可以找到创建的文件FishC.txt,双击后,用记事本打开查看文件内容,这是创建文件时没有指定文件的路径,是Python默认将文件创建到Python的主程序所在的文件夹下面,执行的IDLE程序就放在那里。W是打开模式,可以写入。)
f.write("I love Python.") (写入一串字符,返回写入的字符数)
14
f.writelines(["I love FishC.\n","I love little sister."]) (同时写入多个字符串,回车后没反应,需要到文件所放的位置双击打开后查看,但文件此时处于内存的缓冲区,需要执行close函数,关闭文件对象后,再到文件所放的位置双击打开后查看,才可以看到文件的内容,否则查看不到。)
f.writelines(["\n","I love FishC.\n","I love little sister."]) (前面加个换行符\n,可以让新写入的内容换行,否则,新输入的内容会连接在上一行的后面输入。)
f.close() (关闭后,再次到文件所在的位置,双击打开,就可以查看文件内容了,可不可以不关闭文件,就可双击查看文件内容,可以用本文后面介绍的flush函数,调用flush函数后,在双击打开文件就看可以看到文件内容了。而且用close关闭后,再次用open(“file”,”w”)打开后,file文件中内容相当于重建,全部清空。) 记事本打开文件内容:
I love Python.I love FishC.
I love little sister.
I love FishC.
I love little sister.
f=open("FishC.txt","r+") (重新打开文件,“r+“更新文件方式,打开,即可写入,也可读取)
f.readable() (测试是否能读取)
True
f.writable() (注意:测试写入功能函数writable中的write这个单词省略了“e”字母)
True
for each in f: (由于Python的文件是支持迭代的,所以可以for语句里面去实现读取)
print(each)
I love Python.I love FishC.
I love little sister.
I love FishC.
I love little sister.
f.read() (文件对象内部有一个指针,叫文件指针,它负责指向文件当前的位置,当在文件中读取一个字符的时候,它这个文件指针会指向下一个字符,read函数能从文件指针所处的位置一直读到这个文件的末尾EOF=End Of File,前面用for语句给文件来了一个痛快,所以当前的文件指针指向文件的末尾。)
''
f.tell() (追踪文件指针的位置)
88
f.seek(0) (修改文件指针到开头位置)
0
f.tell() (追踪一下位置)
0
f.readline() (再次测试一下,测试文件指针的位置,每次读取一行,即此时读取的是第一行,包括换行符)
'I love Python.I love FishC.\n'
f.read() (read函数能从文件指针所处的位置一直读到这个文件的末尾)
'I love little sister.\nI love FishC.\nI love little sister.'
f.write("I love my wife.") (再写一句话进去)
15
f.flush() (调用flush函数,不用close关闭文件,就可保存到硬盘,双击打开文件,查看文件内容。)
f.write("I love my WIFI.\n") (再写一句话进去)
16
f.flush() (调用flush函数,不用close关闭文件,就可保存到硬盘,双击打开文件,查看文件内容。)
f.truncate(29) (将文件对象截取到一个指定的位置,如果没有指定pos参数,截取到文件指针指定的当前位置。这里pos参数指定29)
29
f.flush() (查看文件时,也可用f.close()函数关闭文件查看,截取截断的操作效果)
双击用记事本打开文件FishC.txt,查看文件内容:
I love Python.I love FishC. (包括最后隐藏的换行符,从文件开头到第29个字符被保留下来,其它的字符被删除)