zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    地税某数据库异常重启和重启后数据库运行缓慢问题的解决过程
    Oracle 索引 详解
    oracle数据库优化基本概念
    oracle物理读和逻辑读
    SQL 优化之该走索引却不走索引的分析(二)
    数据仓库中的分区修剪
    查询低效率的sql语句
    oracle优化的几个简单步骤
    VBS类似于ceil的函数
    ruby符号的应用
  • 原文地址:https://www.cnblogs.com/wuzhilong/p/9572343.html
Copyright © 2011-2022 走看看