python入门之保存数据-数据库

数据库保存

使用pickle、shelve模块保存数据

import os#工作环境
os.getcwd()#查询工作目录
'E:\\jupyter\\python-basic'
import pickle
i = [1,2,3,4]
with open("pd.data","wb") as f: #"wb"表示写入数据
    pickle.dump(i,f)
d = pickle.load(open("pd.data","rb"))  #"rb"表示读入数据
print(d)
[1, 2, 3, 4]
import shelve
s = shelve.open("sd.bd")
#类字典的操作
s["name"] = "jingjing"
s["lang"] = "python"
s.close()
s = shelve.open("sd.bd")
s["name"]
'jingjing'
for k in s:
    print(k,":",s[])
name : jingjing
lang : python

sqlite3

不同于pickle、shelve模块保存少量的数据,数据库可以实现对大量数据的保存

常见数据库:SQLlist(小型关系型数据库)、Mongodb( NoSQL 数据库)、MySql

import sqlite3
conn = sqlite3.connect("lite.db") #创建数据库连接
cur = conn.cursor()#创建游标对象
cur.execute('drop table books')#删除表
create_table = "create table books(titlt text,auther text,lang text)"
cur.execute(create_table)#创建表格
cur.execute('insert into books values("learn python","jingjing","python")')#执行多条sql语句 
conn.commit()#插入数据
cur.close()#关闭游标
conn.close()#关闭连接

conn = sqlite3.connect("lite.db")#打开数据库
cur  = conn.cursor()#打开游标
cur.execute("select * from books")#查询数据库
print(cur.fetchall())
books = [("first","1","E"),("second","2","C")]
cur.executemany('insert into books values(?,?,?)',books) #一次插入多个数据
cur.execute("select * from books")#查询数据库
print(cur.fetchall())
cur.close()#关闭游标
conn.close()#关闭连接
[('learn python', 'jingjing', 'python')]
[('learn python', 'jingjing', 'python'), ('first', '1', 'E'), ('second', '2', 'C')]

你可能感兴趣的:(jupyter,python基础)