首页 > 编程语言 > 编程路-基础提升-第七周-03

编程路-基础提升-第七周-03

时间:2022-12-28 23:00:15浏览次数:41  
标签:03 第七 文件 创建 编程 文件夹 path 打开 os

文件操作

文件操作是使用Python中,跟现实连接的第一步,也是基础所在,要学会应用,才能慢慢有眼见为实的感觉。

  • 文件的操作作用
  1. 文件读写 文件名称 文件的路径
  2. 文本文件(data.txt) 字符串数据 字节文件(视频,音乐,图片) 二进制数据
  • 文件的基本操作
  1. 打开open(name,mode)   open(file=,mode=,encoding=)
    1. open(file=文件所在位置,mode=操作文件的模式,encoding=以什么编码读取文件  二进制数据不需要设置编码)
    2. open函数,可以打开一个已经存在的文件,或者创建一个新的文件
    3. 内容
      1. name :是要打开的目标文件名的字符(可以包含文件所在的具体路径)
        1. 位置
          1. 绝对路径(一个完整的路径) #F: 所在的盘符  最一个是文件 其他的都是文件夹
          2. 相对路径(基于目前的路径获取)
          3. ../返回上一级   ..\是返回上一个文件夹有几层就可以加几个..\

      2. mode:设置打开文件的模式(访问模式):制度、写入、追加等。
        1. 12种模式
          1. 读入
            1. r read以只读⽅式打开⽂件。⽂件的指针将会放在⽂件的开头。这是默认模式。 r 只读不支持写入 如果文件不存在就报错
            2. rb 以⼆进制格式打开⼀个⽂件⽤于只读。⽂件指针将会放在⽂件的开头。这是默认模式。
            3. r+ 打开⼀个⽂件⽤于读写。⽂件指针将会放在⽂件的开头。
            4. rb+ 以⼆进制格式打开⼀个⽂件⽤于读写。⽂件指针将会放在⽂件的开头。
          2. 写入
            1. w write打开⼀个⽂件只⽤于写⼊。如果该⽂件已存在则打开⽂件,并从开头开始编辑,即原有内容会被删除。如果该⽂件不存在,创建新⽂件。
            2. wb 以⼆进制格式打开⼀个⽂件只⽤于写⼊。如果该⽂件已存在则打开⽂件,并从开头开始编辑,即原有内容会被删除。如果该⽂件不存在,创建新⽂件。
            3. w+ 打开⼀个⽂件⽤于读写。如果该⽂件已存在则打开⽂件,并从开头开始编辑,即原有内容会被删除。如果该⽂件不存在,创建新⽂件。
            4. wb+ 以⼆进制格式打开⼀个⽂件⽤于读写。如果该⽂件已存在则打开⽂件,并从开头开始编辑,即原有内容会被删除。如果该⽂件不存在,创建新⽂件。
          3. 追加
            1. a append打开⼀个⽂件⽤于追加。如果该⽂件已存在,⽂件指针将会放在⽂件的结尾。也就是说,新的内容将会被写⼊到已有内容之后。如果该⽂件不存在,创建新⽂件进⾏写⼊。
            2. ab 以⼆进制格式打开⼀个⽂件⽤于追加。如果该⽂件已存在,⽂件指针将会放在⽂件的结尾。也就是说,新的内容将会被写⼊到已有内容之后。如果该⽂件不存在,创建新⽂件进⾏写⼊。
            3. a+ 打开⼀个⽂件⽤于读写。如果该⽂件已存在,⽂件指针将会放在⽂件的结尾。⽂件打开时会是追加模式。如果该⽂件不存在,创建新⽂件⽤于读写。
            4. ab+ 以⼆进制格式打开⼀个⽂件⽤于追加。如果该⽂件已存在,⽂件指针将会放在⽂件的结尾。如果该⽂件不存在,创建新⽂件⽤于读写。
        2. + 具备读和写的能力
        3. 加在了开头并覆盖原来对应的字节长度,例如一个汉字占了两个字符。
      3. encoding 通常可以支持中文的可以使用utf-8 gbk gb2312编码

  2. 读写
    1. 读入read  r

      1. 只读不支持写入 如果文件不存在就报错,会报错,没有此文件的目录

      2. read(num) 读取数据 num不写默认读取全部数据,写了就读取指定大小的字节 ,但光标移动到数据最后
        1. num 写几个数就读取几个字节
        2. 写的数字超过一行的字节时,还要把一行结尾不显示的\n包含进去,因为\n占一个字节。
      3. 需要打印输出内容,才能显示内容,如果对read连续读取第二次就无法读取数据了,因为第一次读取数据后,光标已经移动到最后了
      4. readlines() 将里面的数据按照行读取,并且保存到列表中
        1. 如果要对文件内容操作,需要用变量对读取出的数据赋值,例如readlines()
        2. 虽然文件关闭,但文件内容已经读取到变量下,对变量进行修改
      5. readline 运行一次读取一行
        1. 连着打印就挨个行输出
        2. 读取中存在空行是因为,程序内部设定中读取后有换行符\n
      6. 还有对打开函数中,文件格式进行设置,一致才能打开读取,l例如:(,,encoding='UTF=8')
    2. 写入
      1. write   w 覆盖写

        1.  只写  操作文件的时候清楚文本所有内容
        2. writelines 将列表中的数据保存到文件中,放回到文件内,需要用写入功能,用writelines一行写入
        3. 打开一个文件,没有就创建
          1. (打开一个文件,没有就创建)当文件不存在,创建文件和不存在就创建 覆盖原来的文件
          2. 括号内的都是字符型
          3. 将变量赋予打开函数后,可以用.函数的方法来调程序
        4. 文件添加读写功能
        5. 有文件就打开文件把里面的内容删除,从头重新写
      2. append 追加数据
        1. 创建文件 和在文件的最后写入
        2. 如果文件不存在就创建一个文件 如果文件有内容就 把数据追加在后面
  3. 关闭
    1. .close()
    2. 文件打开后必须关闭
  4. 指针 光标 
    1. seek(偏移量,起始位置) 设置指针位置 0 开头,1当前,2结尾,起始位置默认为0,可以不写
    2. tell() # 返回当前指针的位置
  5. 模式是r 下面就读   模式是w 下面就写

  • 文件与文件夹操作
  1. shutil   复制
  2. os 
    1. 用法
      1. import.os    导入系统模块

      2. os.函数() 模块也是编程内置模块

      3. os模块属于基础模块,shutil 系统模块,shutil权限比os跟高
    2. 功能
      1. 重命名   os.rename(文件名称,新的名称)

        1. 重命名 文件与文件夹     只能操作一遍,因为改完后,原文件名字就没有了
      2. 移动
      3. 删除
        1. 删除文件   os.remove(name)

          1. 实现写出文件名字 在当前运行的文件夹下
          2. 或者写出文件所在路径
        2. 删除文件夹   os.rmdir(path)

          1. 删除文件夹 只能删除路径下最低层级一个文件夹
      4. 创建文件夹
        1. os.mkdir(path)  创建一个文件夹
        2. os.makedirs('path\path) # 创建整个路径的文件夹
          如果用os.mkdir('path) 创建会报错,因为开始文件夹没有.如果用os.mkdir('path) 创建会报错,因为开始文件夹没有

      5. 文件夹信息
        1. 显示文件夹下内容   os.listdir(path)

          1. 可以把文件夹下所包含的文件名字打印出来
          2. 返回一个列表,文件夹里面的数据
        2. 查看文件夹下所有信息   os.walk(path)

          1. 查看文件夹下所有信息(包括子文件夹下的内容)
          2. 可以用for循环取出
      6. 获取当前路径     os.getcwd(path)

      7. 判断文件存在    os.path.exists(path)

 

标签:03,第七,文件,创建,编程,文件夹,path,打开,os
From: https://www.cnblogs.com/qipaxiaopao/p/17011431.html

相关文章