• 文件I/O操作


    一、文件

        定义:操作系统提供给用户/应用程序操作硬件的一种虚拟的接口/概念

        如何使用文件(open):

    t模式(默认的模式) :1.读写都是以字符串为单位   2.文本文件  3.必须指定encoding = 'utf-8'

          1.打开文件

            windows路径(绝对路径和相对路径)分隔符问题

            open('C:UsersWYCDesktopPYTHONTEXT01')

            解决方法一:open(r'C:UsersWYCDesktopPYTHONTEXT01',)

            解决方法二:open('C:/Users/WYC/Desktop/PYTHON/TEXT01')

           2.文件操作的基本流程

    f=open(r'C:UsersWYCDesktopPYTHONTEXT01',mode='rt')  # 1.选择需要打开的文件,填写路径
    res=f.read()  # 系统调用,打开文件,读取内容
    print(res)  # 打印文件内容
    f.close()  # 关闭文件
    # del f  # 回收操作系统资源

          3.with 上下文文件管理

    with open(r'C:UsersWYCDesktopPYTHONTEXT01',mode='rt',encoding='utf-8') as f: res = f.read() # t模式会将f.read()读出的结果解码成unicode print(res)

          4.模式r(只读文件)

    inp_name=input('请输入你的账号:').strip()
    inp_password=input('请输入你的密码:').strip()
    
    with open('zhmm.txt',mode='rt',encoding='utf-8') as f:
        for line in f:  # 要循环txt文件的所有内容
            name,password=line.strip().split(':')  # 保证
    不会重复
            if inp_name==name and inp_password==password:
                print('登入成功')
                break
        else:  # 与for对应
                print('请重新登入')

          5.模式w (只写文件,创建新的文件)

            只读模式在文件不存在时会创建文件,存在是会清空文件,指针停留在开头,

    with open('zhmm.txt',mode='wt',encoding='utf-8') as f:
        f.read()  # 报错,不可读
        f.write('khadf
    ')  # 在文件里填写khadf,指针停留在末尾需要用
    换行
    
    # 重点:
    #    1.在w模式下,文件打开没有关闭的情况下,连续写入,新写的内容总会跟在旧的后面
    with open('zhmm.txt',mode='wt',encoding='utf-8') as f:
        f.write('khadf12
    ')  
        f.write('khadf435
    ')  
        f.write('khadf342523
    ')  

          6. 模式a(只追加写,在原有的文件之上添加新的内容)

    with open('zhmm.txt',mode='at',encoding='utf-8') as f:
        f.read()  # 报错,不可读
        f.write('')  # 文件不存在时,会创建新的文件
    # 重点:    1.在w模式下,文件打开没有关闭的情况下,连续写入,新写的内容总会跟在旧的后面
        #      2.以a文件重新打开文件时,不会清空源文件的内容,且指针停文件留在最后一行
        f.write('khadf12
    ')
        f.write('khadf435
    ')
        f.write('khadf342523
    ')

            

  • 相关阅读:
    dotnet C# 根据椭圆长度和宽度和旋转角计算出椭圆中心点的方法
    dotnet 启动进程传入不存在的文件夹作为工作目录行为变更
    WPF 双向绑定到非公开 set 方法属性在 NET 45 和 NET Core 行为的不同
    dotnet 替换 ASP.NET Core 的底层通讯为命名管道的 IPC 库
    使用 WPF 做个 PowerPoint 系列 文本 BodyProperties 的 FontScale 与文本字号缩放
    迁移 dotnet 6 提示必须将目标平台设置为 Windows 平台
    DedeCMS标签替换
    C++函数的默认参数
    C++拷贝构造
    DedeCMS图片路径标签
  • 原文地址:https://www.cnblogs.com/Holmes-98/p/14232783.html
Copyright © 2020-2023  润新知