码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-03-01 10:15:37      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:文件流   with   转换   bsp   写入   init   调用   建议   格式   

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

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

 

 

  

 

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

标签:文件流   with   转换   bsp   写入   init   调用   建议   格式   

原文地址:https://www.cnblogs.com/wh-alan/p/8486986.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!