python用pickle模块实现“增删改查”的简易功能

pickle的作用:

1:pickle.dump(dict,file)把字典转为二进制存入文件.

2:pickle.load(file)把文件二进制内容转为字典

import pickle

# 增
def adds():
  users = {"name":"yangbin", "age":22, "sex":"male"}
  with open("red.txt", "wb") as f:
    pickle.dump(users, f)
  dic = {}
  with open("red.txt") as sd:
    dic = pickle.load(sd)
  print dic

# 删
def deletes():
  dic = {}
  with open("red.txt") as f:
    dic = pickle.load(f)
  dic.pop("sex")
  with open("red.txt", "wb") as ff:
    pickle.dump(dic, ff)
  print dic 

# 改
def changes():
  dic = {}
  with open("red.txt") as f:
    dic = pickle.load(f)
  dic["age"] = 28
  with open("red.txt", "wb") as f:
    pickle.dump(dic, f)
  print dic

# 查
def finds():
  dic = {}
  with open("red.txt") as f:
    dic = pickle.load(f)
  for k,v in dic.items():
    print "%s ---> %s" % (k, v) 

adds()
deletes()
changes()
finds()

运行结果:

root@python3:/python/python2/linshi# python 01.py
{'age': 22, 'name': 'yangbin', 'sex': 'male'}
{'age': 22, 'name': 'yangbin'}
{'age': 28, 'name': 'yangbin'}
age ---> 28
name ---> yangbin
root@python3:/python/python2/linshi#

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python pickle模块用法实例

    python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象. 基本接口: 复制代码 代码如下: pickle.dump(obj, file, [,protocol]) 注解:将对象obj保存到文件file中去. protocol为序列化使用的协议版本,0:ASCII协议,所序列化的对象使用可打印的ASCII码表示:1:老式的二进制

  • python持久性管理pickle模块详细介绍

    持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让您更深一步地了解Python 的对象序列化能力. 什么是持久性? 持 久性的基本思想很简单.假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可以保存应用程序对象(待办事项).换句话说,您希望将对象存储在磁盘上,便于 以后检索.这就是持久性.要达到这个目

  • python使用cPickle模块序列化实例

    本文实例讲述了python使用cPickle模块序列化的方法,分享给大家供大家参考. 具体方法如下: import cPickle data1 = ['abc',12,23] #几个测试数据 data2 = {1:'aaa',"b":'dad'} data3 = (1,2,4) output_file = open("a.txt",'w') cPickle.dump(data1,output_file) cPickle.dump(data2,output_file)

  • 从零学python系列之浅谈pickle模块封装和拆封数据对象的方法

    封装是一个将Python数据对象转化为字节流的过程,拆封是封装的逆操作,将字节文件或字节对象中的字节流转化为Python数据对象,不要从不收信任的数据源中拆封数据.可以封装和拆封几乎任何Python数据对象,主要包括: None , True,False    整数,浮点数,复数    字符串,字节,ByteArray对象    元组,列表,集合,包含可封装对象的字典    在一个模块的顶层定义的函数    在一个模块的顶层定义的内置函数    那是在一个模块的顶层定义的类    __dict_

  • Python 序列化 pickle/cPickle模块使用介绍

    Python序列化的概念很简单.内存里面有一个数据结构,你希望将它保存下来,重用,或者发送给其他人.你会怎么做?这取决于你想要怎么保存,怎么重用,发送给谁.很多游戏允许你在退出的时候保存进度,然后你再次启动的时候回到上次退出的地方.(实际上,很多非游戏程序也会这么干)在这种情况下,一个捕获了当前进度的数据结构需要在你退出的时候保存到硬盘上,接着在你重新启动的时候从硬盘上加载进来. Python标准库提供pickle和cPickle模块.cPickle是用C编码的,在运行效率上比pickle要高,

  • Python pickle模块用法实例分析

    本文实例讲述了Python pickle模块用法.分享给大家供大家参考.具体分析如下: pickle提供了一个简单的持久化功能.可以将对象以文件的形式存放在磁盘上. pickle.dump(obj, file[, protocol]) 序列化对象,并将结果数据流写入到文件对象中.参数protocol是序列化模式,默认值为0,表示以文本的形式序列化.protocol的值还可以是1或2,表示以二进制的形式序列化. pickle.load(file) 反序列化对象.将文件中的数据解析为一个Python

  • python用pickle模块实现“增删改查”的简易功能

    pickle的作用: 1:pickle.dump(dict,file)把字典转为二进制存入文件. 2:pickle.load(file)把文件二进制内容转为字典 import pickle # 增 def adds(): users = {"name":"yangbin", "age":22, "sex":"male"} with open("red.txt", "wb&quo

  • Python编写电话薄实现增删改查功能

    初学python,写一个小程序练习一下.主要功能就是增删改查的一些功能.主要用到的技术:字典的使用,pickle的使用,io文件操作.代码如下: import pickle #studentinfo = {'netboy': '15011038018',\ # 'godboy': '15011235698'} studentinfo = {} FUNC_NUM = 5 def write_file(value): file = open('student_info.txt', 'wb') fil

  • python对 MySQL 数据库进行增删改查的脚本

    # -*- coding: utf-8 -*- import pymysql import xlrd # import codecs #连接数据库 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='', db='test_hvr', charset='utf8') cursor = conn.cursor() # 查询数据库 effect_row = cursor.execute("select *

  • Python中tkinter+MySQL实现增删改查

    一.设置主窗口 # -*- coding: utf-8 -*- import tkinter from tkinter import ttk import pymysql # 导入消息对话框子模块 import tkinter.messagebox # 创建主窗口 root = tkinter.Tk() root.title('告警查询') # 设置窗口大小 root.minsize(500,500) tabControl = ttk.Notebook(root) tab1 = ttk.Fram

  • C#实现学生模块的增删改查

    本文实例为大家分享了C#实现学生模块的增删改查的具体代码,供大家参考,具体内容如下 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.Linq; using System.Text; using System.Threading.

  • 详解Nodejs基于mongoose模块的增删改查的操作

    MongoDB MongoDB是基于Javascript语言的数据库,存储格式是JSON,而Node也是基于JavaScript的环境(库),所以node和mongoDB的搭配能减少因为数据转换带来的时间空间开销. Mongoose 是MongoDB的一个对象模型工具,它将数据库中的数据转换为JavaScript对象以供你在应用中使用,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单. 安装模块mongoose npm install

  • python对配置文件.ini进行增删改查操作的方法示例

    前言 本文主要给大家介绍的是关于python对配置文件.ini增删改查操作的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 一.先导入configobj库文件 可以用pip直接安装 #!/usr/bin/python # -*- coding: utf-8 -*- import json from configobj import ConfigObj 二.增添section 这里是前后端分离的例子,从前端接收json数据,然后写入配置文件中 def add(self,

  • 详解使用pymysql在python中对mysql的增删改查操作(综合)

    这一次将使用pymysql来进行一次对MySQL的增删改查的全部操作,相当于对前五次的总结: 先查阅数据库: 现在编写源码进行增删改查操作,源码为: #!/usr/bin/python #coding:gbk import pymysql from builtins import int #将MysqlHelper的几个函数写出来 def connDB(): #连接数据库 conn=pymysql.connect(host="localhost",user="root&quo

  • Python实现Kerberos用户的增删改查操作

    1.首先模拟python类似shell命令行操作的接口: python安装subprocess(本地).paramiko(SSH远程) #-*- coding: UTF-8 -*- #!/usr/bin/python import os, sys import subprocess import paramiko import settings class RunCmd(object): def __init__(self): self.cmd = 'ls' @staticmethod def

  • Python实现连接MySql数据库及增删改查操作详解

    本文实例讲述了Python实现连接MySql数据库及增删改查操作.分享给大家供大家参考,具体如下: 在本文中介绍 Python3 使用PyMySQL连接数据库,并实现简单的增删改查.(注意是python3) 1.安装PyMySQL PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb.PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库.在使用 PyMySQ

随机推荐