武道之路-炼体期五重天后期

2018-03-01 12:22:16来源:cnblogs.com作者:孤月灵声人点击

分享

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

不同编程语言间传递对象的标准格式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),设置环境变量。

  

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台