zoukankan      html  css  js  c++  java
  • 武道之路-炼体期六重天后期

    序列化:把对象从内存中变成可存储和传输的过程,反之为反序列化。

    不同编程语言间传递对象的标准格式json(还有xml),不过在python中json只能序列化简单的对象,复杂的一般用pickle(有可能不能反序列化)

    对于json来说,字典序列化的时候最好都使用双引号。重要的方法:dumps()和dump()->序列化,loads()和load()->反序列化,

    dump把python对象转换成json对象生成一个fp的文件流,而dumps则是生成了一个字符串,load和loads一样。

    import json,pickle

    dict1={"name":"abc","score":77}

    with open('test.txt','w') as f:

      f.write(json.dumps(dict1))#pickle一样 这里是写入

      json.dump(dict1,f)#pickle一样 这里是写入

      json.loads(f.read()),json.load(f) 这里是读取

    模块:本质是一个.py文件,为了实现一些功能(变量,函数,类),文件名:test.py 模块名:test

    包:本质是一个目录或文件夹,其下必须有个__init__.py文件(放一些模块)

    引入:

    import x,y,z as m 引用多个模块, as 取别名

    import test  把test.py文件的代码解释一遍赋给test(调用其中变量:test.变量名,调用函数:test.函数名()),跟from test import * 一样(把其中代码粘贴过来,不建议如此用,防止变量函数会重复)

    from test import  x(test下的变量或方法,若防止重复名可取别名 as)

    导入包本质就是去执行其下的__init__.py文件。

    有时候import 模块时不在同一目录下或其下:

    imporyt os,sys

    __file__当前程序的相对路径

    os.path.abspath(__file__)当前程序的绝对路径

    os.path.dirname(__file__) 去掉最后一个路径

    sys.path.append(url),设置环境变量。

      

  • 相关阅读:
    获取request错误信息
    request error: Connection aborted.', error(113, 'No route to host')
    python yield
    mysql 2003: Can't connect to MySQL server on '127.0.0.1:3306' (99)
    top查看特定pid
    Producer-consumer problem in Python
    ubuntu16.04 安装opencv3.3
    ubuntu 安装MySQLdb
    ElasticSearch mapping
    ubuntu 安装qq方案
  • 原文地址:https://www.cnblogs.com/wh-alan/p/8486986.html
Copyright © 2011-2022 走看看