• python day8


    本节内容

    IO编程

    文件读写

    序列化

    一、IO编程

    IO编程简单来说就是读写操作。

    IO中最重要的是流概念:什么是流(Stream):流就是一个数据传输的通道。通道传输东西他是单向的,所以我们的流有输入流与输出流。

    输入流:指从文件到程序

    输出流:从程序到外部文件

    二、文件读写操作

    读写文件是最常见的IO操作。Python内置了读写文件的函数。

    在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件)。

    python提供了函数 open来创建一个file对象(文件对象/目录对象)

    open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
    
    file:文件路径
    mode:文件的处理模式
    buffering:文件缓冲区
    encoding:编码
    View Code

    file对象的属性

     进行文件的读写:

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    # author:Dragon war
    # datetime:2018/9/6 14:45
    # software: PyCharm
    # IO读写操作
    
    
    # 读文件
    # 创建一个文件对象
    file=open('G://test.txt','r')
    # 读取文件   read(count) 方法读取:传入count读取count字节的数据 不传入他会尽可能的读取多的自己额,有可能直接全部读完
    text=file.read(3)
    #关闭打开的文件
    file.close()
    print(text)
    View Code
    #
    file=open('G://test.txt','w')
    #写文件
    file.write("这是我写的新文件")
    file.close()
    View Code

    三、序列化

    如果我们想把变量存储到文件中,那么就需要序列化。变量只有序列化后才能进行在网络间传输。

    如果我们下次需要这个变量那我们需要从文件中把变量读出来,这称为反序列化

    Python提供了pickle模块来实现序列化

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    # author:Dragon war
    # datetime:2018/9/6 14:45
    # software: PyCharm
    # IO读写操作
    
    #
    # # 读文件
    # # 创建一个文件对象
    
    # # 读取文件   read(count) 方法读取:传入count读取count字节的数据 不传入他会尽可能的读取多的自己额,有可能直接全部读完
    # text=file.read(3)
    # #关闭打开的文件
    # file.close()
    # print(text)
    
    
    
    
    d=dict(name='小明',age=20,score=90)
    
    import pickle
    #序列化
    by=pickle.dumps(d)
    
    # 写入文件
    file=open("G://文件.txt",'wb')
    file.write(by)
    file.close()
    
    # 读取:反序列化
    file=open("G://文件.txt",'rb')
    
    
    ds=pickle.load(file)
    print(ds)
    file.close()
    View Code
  • 相关阅读:
    技术服务支持
    如何将Java Web项目部署到服务器上
    移动端前端开发——微信左上角返回按钮(JQMobile)
    Mac下phpstorm 浏览器出现 502 bad gateway 解决办法
    mysql sql语句大全
    复制自己的ssh-key
    PhpStorm环境搭建
    max下搭建XAMPP
    Cocopods第三方库管理工具创建Swift项目&OC项目就
    Swift-闭包
  • 原文地址:https://www.cnblogs.com/wuzhilong/p/9572343.html
Copyright © 2020-2023  润新知