• 文件操作


    1. 文件操作
            open 打开
            f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes
            打开一个文件的时候获取到的是一个文件句柄.
            绝对路径
                从磁盘根目录开始寻找
            相对路径
                相对于当前程序所在的文件夹
                ../ 上一层文件
                文件夹/ 进入xxx文件夹
        2. mode:
            r: 读取,只读.
                读取文件的相关操作
                    1. read()
                        默认: 读取文件内容(全部)
                        read(n) 读取n个字符
                    2. readline()  读取一行
                    3. readlines() 读取全部. 返回列表
                    (最重要)4. for line in f: 每次读取一行内容
            w:
                写入. 只写
                创建文件
                会清空文件
            a:
                也可以创建文件
                追加写
            r+:  对于文件而言. 应该有的操作就两个:读, 写
                读写操作
            w+:
                写读操作
            a+:
                追加写读
            所有带b的表示直接操作的是bytes, 当处理非文本文件的时候.
            rb
            wb
            ab: 断点续传
            r+b
            w+b
            a+b
        3. 文件操作中关于文件句柄的相关操作
            seek() 移动光标
            f.seek(0) 移动到开头(最多)
            f.seek(0, 2) 移动到末尾
                seek:两个参数
                    1. 表示偏移量
                    2. 从xxx开始偏移, 默认0, 开头   1, 当前位置    2, 末尾
            tell
                返回光标所在的位置
      4. 文件修改, 实际操作(重点)
        
    f = open("水果.txt", mode="r", encoding="utf-8")
    line = f.readline().strip() # 第一行内容, 编号,名称,价格,数量,哈哈
    title = line.split(",") # [编号,名称,价格,数量,哈哈]
    lst = []
    i = 0
    for line in f: # 1,香蕉,1.85,50
    dic = {} # 每行都是一个字典
    line = line.strip() # 去掉空白 1,香蕉,1.85,50
    data = line.split(",") # [1, 香蕉, 1.85, 50]

    for i in range(len(title)):
    dic[title[i]] = data[i]
      lst.append(dic)
    print(lst)
  • 相关阅读:
    android intent 隐式意图和显示意图(activity跳转)
    Stack栈的三种含义
    gdi+ 高速绘制透明窗体
    Hibernate Criterion
    iOS安全攻防(三):使用Reveal分析他人app
    Android入门第八篇之GridView(九宫图)
    【Android动画】之Tween动画 (渐变、缩放、位移、旋转)
    Ubuntu下deb包的安装方法
    理解class.forName()
    Myeclipse7.5 下载 安装 注冊 注冊码 100%成功
  • 原文地址:https://www.cnblogs.com/liuzhiqiang666/p/10071076.html
Copyright © 2020-2023  润新知