1.文本文件 ,二进制文件
二进制文件:用vi 打开一个图片,MP3,视频
2.文件打开方式
# 重定向 文件不存在 文件存在 r error 文件开头 w 相当于 > 创建 覆盖,删除以前的内容 a 相当于 >> 创建 追加到末尾
3 .读取文件内容
1)f.read()
In [1]: f = open("test.py","r") In [2]: f.read() Out[2]: 'imprordfnsaf dsafdsa fdsaf ' In [3]: f.read(1) Out[3]: '' In [3]: f.read(1) Out[3]: '' #### 文件指针已经到文件末尾了
2)f.read(1) f.read(10)
In [1]: f = open("test.py","r") In [2]: f.read(1) #一个字符一个的读 Out[2]: 'i' In [3]: f.read(1) Out[3]: 'm' In [5]: f.read(10) #10个 Out[5]: 'rordfnsaf ' In [10]: f.read(10) #文件指针到末尾了 Out[10]: '' In [11]: f.close()
4.文件写
In [12]: f = open("test1.py","w") In [13]: f.write("asdf") Out[13]: 4 In [14]: f.write(" asdf") Out[14]: 5 In [15]: f.write(" aaa") Out[15]: 4 In [16]: f.close() ###3 文件内容 asdf asdf aaapython
5.小程序:
1)给文件写入东西
#1.创建一个文件 f = open("love.py","w") #2.写入东西 f.write("waiting me my love") #3.关闭文件 f.close()
2)读取文件内容
#1.打开文件 f = open("love.py","r") #2.读取文件 result = f.read() print(result) #要有输出 #3.关闭文件 f.close()
6.应用1:复制文件流程
1)版本1:大框架
#1.获取用户要复制的文件名 #2. 打开原文件 f1 = open("aaa","r") #3.打开新文件 f2 = open("bbb","w") #4.读取原文件的内容 result = f1.read() #5。写到新文件中 f2.write(result) #6.关闭文件 f1.close() f2.close()
2)版本2:获取文件名
#1.获取用户要复制的文件名 file_name = input("请输入文件名:") #2. 打开原文件 f1 = open(file_name,"r") #3.打开新文件 f2 = open('file_name + "[附件]"',"w") #4.读取原文件的内容 result = f1.read() #5。写到新文件中 f2.write(result) #6.关闭文件 f1.close() f2.close()
3)版本3:如何获取输出正确的文件名
#1.获取用户要复制的文件名 file_name = input("请输入文件名:") #2. 打开原文件 f1 = open(file_name,"r") #3.打开新文件 f2 = open(file_name + "[附件]","w") #new_file_name = file_name + "附件.py" #f2 = open(new_file_name,"w") #4.读取原文件的内容 result = f1.read() #5。写到新文件中 f2.write(result) #6.关闭文件 f1.close() f2.close()
4)字符串操作,获取文件名
#1.获取用户要复制的文件名 file_name = input("请输入文件名:") #2. 打开原文件 f1 = open(file_name,"r") #3.打开新文件 #获取文件名 字符串操作 position = file_name.rfind(".") new_file_name = file_name[0:position] + "[cp]" + file_name[position:] f2 = open(new_file_name,"w") #4.读取原文件的内容 result = f1.read() #5。写到新文件中 f2.write(result) #6.关闭文件 f1.close() f2.close()