python中的MySQL使用 + pickle使用
(1)python中有一个包“sqlite3”,可以用来进行数据库相关的操作;
参考下面一个例子:
import sqlite3
import pickle img_list = [('a' , 0) , ('b' , 0)]
length = [1 , 2]
content = [img_list , length] #如果没有Info.db,则新建一个
if not os.path.exists("Info.db"):
conn = sqlite3.connect("Info.db")
c = conn.cursor()
#执行括号中的语句,使用CREATE TABLE创建一个表
c.execute('''CREATE TABLE INFO
(NAME TEXT NOT NULL,
LENGTH INT NOT NULL);''')
conn.commit()
conn.close()
#删除Info.db中已有的数据,初始化操作
conn = sqlite3.connect('info.db')
c = conn.cursor()
c.execute('delete from INFO;')
#将img_list和length写入表中
for i in range(len(img_list)):
a = "insert into INFO values(" + "'" + img_list[i] + "'," + str(length[i]) + ");"
c.execute(a)
conn.commit()
conn.close()
(2)关于pickle的使用:
可以使用pickle包对对象进行序列化,方便存储和读取;例子如下:
首先进行序列化:
#init local.db
if not os.path.exists(save_data_path + "local.db"):
conn = sqlite3.connect(save_data_path + "local.db")
c = conn.cursor()
c.execute('''CREATE TABLE INFO
(NAME TEXT NOT NULL,
LENGTH INT NOT NULL);''')
conn.commit()
conn.close()
conn = sqlite3.connect(save_data_path + 'local.db')
c = conn.cursor()
c.execute('delete from INFO;')
conn.commit()
conn.close()
db_file = open(save_data_path + 'local.db' , 'wb')
pickle.dump(content , db_file , 1) #序列化操作,1表示以二进制方式进行序列化
读取操作,例子如下:
import pickle
with open('./train_data/0/local.db' , 'rb') as f:
images , length = pickle.load(f)
python中的MySQL使用 + pickle使用的更多相关文章
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- Python中使用Mysql(安装篇)
准备工作 import MySQLdb Linux系统自带了Python,但并不是都有这个包,至少我每次拿到一台全新的服务器时候,都发现没有装这个包. 这个东西的下载地址是 http://source ...
- (转)Python中操作mysql的pymysql模块详解
原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...
- python中实现mysql连接池
python中实现mysql连接池 import pymysql from DBUtils.PooledDB import PooledDB MYSQL_HOST = 'localhost' USER ...
- Navicat的使用与python中使用MySQL的基本方法
Navicat的使用与python中使用MySQL的基本方法 Navicat的下载及安装 下载地址 http://www.navicat.com.cn/download/navicat-premium ...
- python中的MySQL数据库操作 连接 插入 查询 更新 操作
MySQL数据库 就数据库而言,连接之后就要对其操作.但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维 ...
- Python中模块json与pickle的功能介绍
json & pickle & shelve 1. json的序列化与反序列化 json的使用需要导入该模块,一般使用import json即可. json的序列化 方法1:json. ...
- python中的mysql数据库like模糊查询
%在python中是个特殊的符号,如%s,%d分别代表了字符串占位符和数字占位符. 大家知道,mysql的模糊查询也需要用到%. 所以,可以先把需要查的字符串抽出来,再以参数方式传入. args = ...
- python中的json和pickle
author:headsen chen date::2018-04-10 09:56:54 json模块和pickle模块: 这是用于序列化的两个模块: 概念介绍:json和pickle模块是将数据 ...
随机推荐
- 我对DFS的理解
我对DFS的理解 [何为DFS] 深度优先搜索(Depth-First-Search),简称DFS.是一种常见搜索算法.其方法是从原点不断一条路扩散,当无路可走时回退来走下一条路,直至找到目标或遍历. ...
- MyBaits集合的嵌套 Select 查询
---恢复内容开始--- <resultMap id="slist" type="com.qujiali.model.AdShareInfo"> & ...
- 在IIS上搭建Exceptionless日志收集框架
系统环境要求 .NET 4.6.1,如果已安装过VS请忽略.Java Sdk1.8+,Win10环境下配置Java 环境变量参考,ElasticSearch 5.1,它是一个基于Lunce搜索服务器. ...
- vue.js实战——props单向数据流
Vue2.x通过props传递数据是单向的了,也就是父组件数据变化时会传递给子组件,但是反过来不行. 业务中会经常遇到两种需要改变prop的情况, 一种是父组件传递初始值进来,子组件将它作为初始值保存 ...
- Linux C Socket简单实例与详细注释
最近做的东西与socket十分紧密,所以很好奇它具体是如何实现的,以前也有了解过,但是又忘记了,于是把它记录下来,以便日后查看. 服务器端:server.c #include <sys/type ...
- Git源码管理工具使用
注明:双击tap键为自动补全操作 1.视频地址:http://www.newbieol.com/course/index_102.html 2.sourcetree是一个拥有界面的git工具吧 下载官 ...
- Windows Server 2012 蓝屏 Wpprecorder.sys 故障
坑爹的园区昨天停电了,导致运行中的服务器中断,来电之后,其中有一台Windows 系统的服务无法运行了,接了个显示器,发现无法进入系统了,挂掉了,这下可完蛋了,虽然做了Radio 磁盘阵列,数据不会丢 ...
- [UVa-437] Color Length
无法用复杂状态进行转移时改变计算方式:巧妙的整体考虑:压缩空间优化时间 传送门:$>here<$ 题意 给出两个字符串a,b,可以将他们穿插起来(相对位置不变).要求最小化ΣL(c),其中 ...
- xadmin 数据添加报错: IndexError: list index out of range
报错现象 xadmin 集成到项目后进行添加数据的时候报错 具体如下 黄页 后端 具体报错定位 报错分析 点击这里 报错解决 源码 input_html = [ht for ht in super(A ...
- go实现dgraph的各种操作
go实现dgraph的各种操作 import "github.com/dgraph-io/dgo" import "github.com/dgraph-io/dgo/pr ...