json作为不同语言间进行数据交互的媒介,在当下已经渐渐取代了之前的xml,看一波python操作json

 # coding = ascii

 import json
import pickle
import sys
import os
'''
练习json,pickle
json类型的数据可以实现不同语言间的数据交互,
python3中引入json是为了实现将字典,列表等格式的数据
打包成字符串形式,即将其序列化,使用eg.json.dump(list,f) or f.write(json.dumps(list))实现。
反序列化:将字符串格式的文本内容解析为对应的原格式数据从而实现操作,
使用eg.json.load(f) or json.loads(f.read())
pickle的用法跟json完全一样,只是pickle支持将复杂对象打包成字符串形式
而json做不到。
'''
#序列化(serializable)
# list = [1,2,3,4,5,6]
#maps = {"name":"Alex","age":30}
# f = open("jsonpractice.text","w")
# f.write(json.dumps(list)+"\n"+json.dumps(maps))
# f.close() #反序列化
# f1 = open("jsonpractice.text","rb")
# data = json.loads(f1.read())
# print(data)
# for i in data.keys():
# print(data[i])
# f1.close() #pickle序列化
# def goby():
# print("good bye")
# maps = {"name":"Alex","age":30}
# maps["func"] = '''def goby():
# print('good by')'''
# f = open("jsonpractice2.text","wb")
# f.write(pickle.dumps(maps)) #pickle.dump(maps,f)
# f.close() #pickle反序列化
# f1 = open("jsonpractice2.text","rb")
# #data = pickle.loads(f1.read())
# data = pickle.load(f1)
# print(data["func"])
# exec(data["func"])
# f1.close() # 字符转码实现
# test = "print('你好')"
# print(sys.getdefaultencoding())
# print(test.encode("utf-8").decode("ascii","replace").encode("ascii","replace").decode("utf-8"))
#exec(test)

python操作json来存储简单的数据,pickle来操作复杂的数据的更多相关文章

  1. Jquery操作cookie,实现简单的记住用户名的操作

     一.jquery.cookie.js介绍  jquery.cookie.js是一个基于jquery的插件,一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cook ...

  2. Python处理JSON

    从开源中国的博客搬来,合并博客 一.JSON是什么? JSON是一种轻量级的数据交换格式 二.Python处理JSON的思维 其实很容易理解,无非是将数据编成JSON格式数据和吧JSON格式的数据解析 ...

  3. Python中json的简单读写操作

    Python中json的简单读写操作 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的 ...

  4. 基于Python项目的Redis缓存消耗内存数据简单分析(附详细操作步骤)

    目录 1 准备工作 2 具体实施   1 准备工作 什么是Redis? Redis:一个高性能的key-value数据库.支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使 ...

  5. (数据科学学习手札126)Python中JSON结构数据的高效增删改操作

    本文示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 在上一期文章中我们一起学习了在Python ...

  6. Python的datetime与Decimal数据进行json序列化的简单说明

    我们在Python的json.JSONEncoder类中可以查看Python数据序列化为JSON格式的数据时数据类型的对应关系: class JSONEncoder(object): "&q ...

  7. python 发送json数据操作实例分析 - python

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 本文实例讲述了python 发送json数据操作.分享给大家供大家参考,具体如下: # !/usr/bin/env py ...

  8. Python操作JSON数据代码示例

    #!/usr/bin/env python import json import os def json_test(): return_dic = {} json_data = { 'appid':' ...

  9. Json概述以及python对json的相关操作

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programming Langu ...

随机推荐

  1. linux CentOS7.2安装ffmpeg-3.0.2

    ffmpeg是一款视频处理软件,在php5.5前以php_ffmpeg.dll扩展的方式存在,通过网上查资料显示,从php5.5以后不支持该扩展了.那么在linux系统下安装ffmpeg.方法如下: ...

  2. undefined reference to '__android_log_print'解决方案

    1:在源程序中添加头文件 #include <cutils/log.h> 2:在Android.mk中添加 LOCAL_SHARED_LIBRARIES := \ libutils \ l ...

  3. 作业:xml练习2-写.xml的外部约束文件(dtd文件)

    写外部DTD: 步骤: 1.在srd目录下新建DTD文件,并命名为:scores.dtd 2.在练习1的基础上,剪切练习1的DTD内部声明.粘贴到一个新建的DTD文件中.剪切之后的地方换上:包含外部D ...

  4. hdu 1753 大明A+B(大数)

    题意:小数大数加法 思路:大数模板 #include<iostream> #include<stdio.h> #include<string.h> using na ...

  5. Java 并发 —— volatile 关键字

    volatile 修饰变量等于向编译器传达如下两层含义: 保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的. 禁止进行指令重排序. volat ...

  6. BZOJ-4488:最大公约数(GCD)

    给定一个长度为 N 的正整数序列Ai对于其任意一个连续的子序列{Al,Al+1...Ar},我们定义其权值W(L,R )为其长度与序列中所有元素的最大公约数的乘积,即W(L,R) = (R-L+1) ...

  7. kali本機安裝openvas的血淚史復盤

    安裝openvas的血淚史 因爲學習的需要,需要裝openvas,但是在虛擬機裏面,無論怎麼更新跟新源,總是會有問題,一氣之下,便不用虛擬機了,將自己的物理機刷成了kali機,從此便進了一個大坑. 安 ...

  8. css animation 简写和参数

  9. MFC绘制直角坐标系

    void CMyPicoTestDlg::DrawWave(CDC *pDC,CRect &rectPicture) { CPen newPen; //用于创建新画笔 CPen *pOldPe ...

  10. JSP提交表单的几种方法

    1.通过<form action="url"><input type="submit"></form>按钮方式提交 这种方式 ...