• python之文件的相关操作


    一、.文件操作的函数

        open("文件名(路径)" ,mode = "模式" , encoding="字符集")

          注:文件路径:

                 (1)绝对路径{从磁盘的根目录寻找,或从互联网寻找}

                 (2)相对路径相对于当前程序所在的文件夹 ../代表从当前文件夹跳出

      .模式

        r: 读模式

          其他操作:

            readline() 读行 一次读一行

            readlines()  多行读

        w: 写模式

          每当进行写模式时会先清空原有内容,如果文件不存在时则会自动创建文件

        a:  追加写

          如果文件不存在则创建,存在则追加到最后

        b: b模式是当我们对非文本文件进行操作时只能用b模式,b表示以字节的操作

          {rb:读b模式,wb:写b模式,ab:追加b模式}

        r+:可读,可写

        w+:可写,可读

        a+:可写,可读

        r+b:以bate形式进行读写

        w+b:以bate形式进行写读

        a+b:以bate形式进行写读

      3.其他常见的操作

        1.光标(seek)

          seek(0) 开头

          seek(0,1) 找到当前光变的位置

          seek(0,2) 结束的位置

        2.tell() 获得光标的位置

        3.truncate是截断文件,所以文件的打开方式必须可写,但是不能用w或w+等方式打开,因为那样直接清空文件了,所以truncate要在r+或a或a+等模式下测试效果。

      4.修改文件

        1.首先要引入OS模块

        2.打开目标文件

        3.打开文件副本

        4.在目标文件中读取内容进行修改写入到副本中

        5.删除源文件

        6.重命名副本 

      习题练习:

      

      代码如下:

      

     1 new = []
     2 sum = 0
     3 with open("a.txt",mode="r",encoding="utf-8")as i:
     4     for line in i:
     5         li = line.strip().split()
     6         dic = {"name":li[0],"price":int(li[1]),"amount":int(li[2])}
     7         new.append(dic)
     8         sum = sum + int(dic["price"])
     9     print(sum)
    10     print(new)

      运行截图:

      

  • 相关阅读:
    变量的解构赋值
    vue-progressbar 知识点
    <script>标签里的defer和async属性 区别(待补充)
    管理node.js版本的模块:n
    node 知识点
    让node支持es模块化(export、import)的方法
    jvm 知识点
    前端 术语
    js的严格模式
    commonJS、AMD、es模块化 区别(表格比较)
  • 原文地址:https://www.cnblogs.com/qq631243523/p/9430179.html
Copyright © 2020-2023  润新知