python基础 文件的操作

文件的操作

  • 1.1 文件概念

    文件是计算机中数据持久化储存的表现形式
    
  • 1.2文件操作基本语法

       格式一(手工关闭格式):
     	1.打开文件:	file = open("文件名","读写模式")
     	2.操作文件:	*
     	3.关闭文件:	file.close()
     格式二(免关闭格式):
     	1.打开文件:	with open("文件名","读写模式") as file:
     	2.操作文件:	*
     	3.关闭文件(自动关闭文件)
    注意:
    文件操作完毕后必须关闭,否则内存将长期保持对文件的连接状态,造成内存溢出的现象发生。
    
  • 1.3文件的读写模式

读写模式 数据读写基本单位 操作权限 注意事项
rb 字节 读取信息,如果文件不存在报错
wb 字节 写入信息覆盖原始信息,如果不文件存在建新
ab 字节 追加写 写入信息到原始信息末尾,如果文件不存在建新
rb+ 字节 读,写 读写信息,如果文件不存在报错
wb+ 字节 读,写 写入信息覆盖原始信息,如果不存在建新
ab+ 字节 读,追加写 写入信息到原信息末尾,如果文件不存在建新
r 字符 读取信息,如果文件不存在建新
w 字符 写入信息覆盖原始信息,如果文件不存在建新
a 字符 追加写 写入信息到原信息末尾,如果文件不存在建新
r+ 字符 读,写 读取信息,如果文件不存在报错
w+ 字符 读,写 写入信息覆盖原
始信息,如果文件不存在建新
a+ 字符 读,追加写 写入信息到原信息末尾,如果文件不存在建新
  • 1.4读文件操作

函数名称 功能 参数 返回值
read() 读取文件中所以信息 文件中的所有信息
read(num) 读取文件中指定数量的zifu/字节信息 num“读取的总量 文件中指定数量的信息
readline() 读取文件中一行信息,以/n判定是否读取完毕 文件中的一行信息
readlines() 将文件中信息以行为单位读取到列表中
以/n判定行是否读取完毕
由文件中所有行信息组成的列表对象
  • 1.5 写文件操作

函数操作 功能 参数 返回值
write(str) 将指定信息写入到文件 str:要写入的字符串信息 写入的数据总量
writelines(model) 将指定信息写入到文件 model:要写入的存储模型信息,模型中数据是字符串
  • 文件路径

    • 文件路径概念

       文件在计算机存储器(例如硬盘)中保存的位置称为文件路径
      
    • 文件路径的分类

         相对路径:从程序运行所在的目录位置描述其他文件的保存路径
         	cc.txt					当前目录下的cc.txt
         	aa\\cc.txt				当前目录下的aa目录下的cc.txt
         	aa/cc.txt				当前目录下的aa目录下的cc.txt
         绝对路径:从系统定义的存储位置描述文件的保存路径
         	D:\\aa\bb\cc.txt		
         	D:/aa/bb/cc.txt
      
  • 3 件相关操作

函数名称 功能 参数 返回值
rename(file1,file2) 修改文件名 file1:原始文件名对应的路径字符
file2:新文件名对应的路径字符串
remove(file) 删除文件 file:要删除的文件对应的路径字符串
mkdir(file) 创建目录 file:要创建的目录对应的路径字符串
rmdir(file) 删除目录 file:要删除的目录对应的路径字符串
  • 练习

"""
案例:windows复制文件
分析:
1. 整体文件复制采用 rb wb模式进行
2. 复制文件需要更改名称,变化是有规则的
3. 1.txt -> 1 - 副本.txt
"""
file1_name = "d:/1.txt"
idx = file1_name.rfind(".")
# print(file1_name[0:idx])
# print(file1_name[idx:])
file2_name = file1_name[0:idx]+ " - 副本" + file1_name[idx:]

file1 = open(file1_name,"rb")
file2 = open(file2_name,"wb")

while True:
    info = file1.read(1024)
    if len(info) == 0:
        break
    else:
        file2.write(info)

file1.close()
file2.close()

猜你喜欢

转载自blog.csdn.net/hhufeiji/article/details/83904099
今日推荐