zoukankan      html  css  js  c++  java
  • 文件操作

    #一、文件操作简介

    #1.什么是文件

    #操作系统提供给用户操作复杂硬件(硬盘)的简易接口

    #2.为什么要操作文件

    #人或应用程序需要永久保存的数据

    #3.如何使用
    # x = open(r'D:PYCM文件a.txt',encoding='utf-8')  # r 取消转义
    # print(x)  # x是文件对象
    # print(x.read())  # windows操作系统默认的编码是’gbk'
    # x.read()  # 向操作系统请求,读取文件内容
    
    # x.close()  # 告诉操作系统,关闭打开的文件
    
    # with open(r'D:PYCM文件a.txt',encoding='utf-8') as x , 
    #     open(r'D:PYCM文件.txt', encoding='utf-8') as x1:  # ,  支持多个文件
    #     print(x)
    #     print(x.read())

    二、操作文件的单位

    # t 文本文件   t在使用的时候需要指定encoding参数,如果这个t不写默认就是t
    # b 二进制 一定不能指定encoding参数
    # mode参数可以不写,不写默认是rt,只读的文本文件,这个t不写默认就是t
    #第一种:t 文本文件
    # with open(r'D:PYCM文件a.txt',mode='rt',encoding='utf-8') as x:
    #     print(x.readable())  # 是否可读   打印的值:True
    #     print(x.writable()) # 是否可写    打印的值:False
    #     print(x.read())  # 一次性将"a.txt"文件内容全部读出
    
    
    #第二种: b 二进制   不需要编码参数
    with open(r'D:PYCM文件a.txt',mode='rb') as x:
        print(x.readable())  # 是否可读   打印的值:True
        print(x.writable()) # 是否可写    打印的值:False
        print(x.read())  #  一次性将"a.txt"文件内容全部读出

    三、文件处理模式
    # r  # 只读模式
    # w # 只写模式
    # a # 追加写模式


    第一种:r模式
    #注意:
    # 1.r模式再打开文件的时候,如果文件不存在,直接报错
    
    # 2.文件路径可以写相对路径,但是必须注意该文件不许与执行文件在同一层文件下
    
    # with open(r'D:PYCM文件a.txt',mode='rt',encoding='utf-8') as x:
         # print(x.readable())  # 是否可读   打印的值:True
         # print(x.writable()) # 是否可写    打印的值:False
    
         # print('>>1:')
         # print(x.read())  # 一次性将文件内容全部读出
         # print('>>2:')
         # print(x.read())  # 读完一次之后,文件光标已经到文件末尾了,没有内容可读
    
         # print(x.readlines())  # 返回的是一个列表,列表中的一个个元素对应的就是文件的一行行内容
         # for i in x:
         #     print(i)  # 这个方法 就可以解决大文件一次性读取占用内存过高的问题
         # print(x.readline())  # 只读取文件一行内容
    View Code

    第二种:w模式

    #注意:
    # 1.文件不存在的情况下 自动创建该文件
    # 2.当文件存在的情况下 会先清空文件内容再写入
    
    # with open(r'D:PYCM文件a.txt',mode='w',encoding='utf-8') as x:
    #     print(x.readable())  # 是否可读   打印的值:False
    #     print(x.writable()) # 是否可写    打印的值:True
    
    #     x.write('把一切献给现在
    ')
    #     x.write('把一切献给现在
    ')  # 
    或者
     代表换行
    #     x.write('把一切献给现在
    ')
    #     x.write('把一切献给现在')  # 打印结果:会在“a.txt”显示4行 '把一切献给现在'
    
    # l = ['出你的就是能促进,s检查司机说
    ','循环水泵垂涎三尺,你sdfsf翻~
    ','不sfad不,你没sa翻~
    ']
    # x.writelines(l)  # 会将l列表里的内容写入“a.txt”中,如果该文件里有内容,则会替换原文件的内容
    View Code

    第三种:a模式

    #注意:
    # 1.当文件不存在的情况下 自动创建该文件
    # 2.当文件存在的情况下,不清空文件内容, 文件的光标会移动文件的最后
    # with open(r'bbb.txt',mode='a',encoding='utf-8') as f:
    #     print(f.readable())  # 是否可读
    #     print(f.writable())  # 是否可写
    #     f.write('呢
    ')  # 会将此内容写入原本不存在的"bbb.txt"文件中,如果"bbb.txt"文件存在,则会写入该文件内容里最后一个光标后面
    View Code
    
    
  • 相关阅读:
    依赖注入
    微服务下的安全方案
    VS2019 社区版(community) 离线版本 解决“试用30天过期”步骤
    webpack4升级webpack5
    Ubuntu 上 Node.js 安装和卸载
    记录一次使用locust压测的过程
    大厂面试通关指南,已拿腾讯,阿里offer(附100+最新大厂真题)
    通过自己整理和刷题三个月成功入职腾讯,皇天不负有心人啊!!
    不懂就问系列,为什么别人能靠这份面试题宝典去大厂?(内附面试题答案)
    整理了3家面试问题:美团+字节+腾讯,个个三面,你认为你能走到哪一面?
  • 原文地址:https://www.cnblogs.com/xiongying4/p/11141992.html
Copyright © 2011-2022 走看看