数据存储方式——JSON、CSV、MongoDB、Redis、MySQL
时间:2022-07-23
本文章向大家介绍数据存储方式——JSON、CSV、MongoDB、Redis、MySQL,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
数据存储方式
数据存储介绍
数据存储对象包括数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储介质上。数据存储要命名,这种命名要反映信息特征的组成含义。数据流反映了系统中流动的数据,表现出动态数据的特征;数据存储反映系统中静止的数据,表现出静态数据的特征。
数据库一般分为两种:关系型数据库、非关系型数据库。
由于一些需要最近看了一部分关于数据库的东西,在这里记录一下。主要记录JSON、CSV、MongoDB、Redis和MySQL。由于后三者具体安装教程有很多,这里就不在叙述,主要是叙述一下自己在做东西时的入门的一些代码。后三者安装包会后回复数据存储获取,尤其是Redis,网上下载速度那叫一个让人着急。
1、JSON
简单使用
import json
#1.字符串和dict list转换
#1.1字符串转dict或list
data='[{"name":"张三","age":23},{"name":"李四","age":24}]'
list_data=json.loads(data)
#1.2dict list转字符串
list=[{"name":"张三","age":23},{"name":"李四","age":24}]
str_data=json.dumps(list)
#2.文件对象和dict list转换
#2.1 dict list转对象 即为写入文件到本地
list=[{"name":"张三","age":23},{"name":"李四","age":24}]
#按照以前学的 应该写成这样 但是这样太麻烦
#str_data=json.dumps(list)
#with open("02json.json","w",encoding="utf-8")as f:
# f.write(str_data)
# 新的写法如下 其中fp是filepath
json.dump(list,open("02new.json","w"))
#2.2 对象转dict list 即为读取文件到计算机内存
fp=open("02new.json","r")
result=json.load(fp)
#为简化代码 可以一步到位
result=json.load(open("02new.json","r"))
print(result)
2、CSV
简单使用
import json
import csv
#需求 json数据转换成csv文件
#1.分别 读json 创建文件csv
json_fp=open("02new.json","r",encoding="utf-8")
csv_fp=open("03new.csv","w",encoding="utf-8")
#2.提出 表头 表内容
data_list=json.load(json_fp)
#若想要手写表头 则可以这样写
sheet_title={"姓名","年龄"}
#sheet_title=data_list[0].keys()
sheet_data=[]
for data in data_list:
sheet_data.append(data.values())
#3.csv写入器
writer=csv.writer(csv_fp)
#4.写入表头
writer.writerow(sheet_title)
#5.写入内容
writer.writerows(sheet_data)
#6.关闭两个文件
json_fp.close()
csv_fp.close()
3、MongoDB
简单使用
#安装pymongo
import pymongo
try:
#1.连接mongodb 创建客户端mongo_py
mongo_py=pymongo.MongoClient()
#2.库和表的名字 有数据会自动建库建表
#数据库
db=mongo_py["six"]
#表 集合
collection=db["stu"]
#上面两句也可以写成下面这样
#collection=mongo_py["six"]["stu"]
#3.插入数据
#one={"name":"张三0","age":203}
#two_many=[
# {"name":"张三1","age":213},
# {"name":"张三2","age":223},
# {"name":"张三3","age":233},
# {"name":"张三4","age":243}
#]
#collection.insert_one(one)#插入一个
#collection.insert_many(two_many)#插入多个
#collection.insert()#插入任意个
#4.删除数据
#collection.delete_one({"age":213})#删除指定条件的一个
#collection.delete_many({"age":203})#删除指定条件的多个
#5.修改数据
#collection.update_one({"age":223},{"$set":{"name":"伯约"}})#可修改一个
#collection.update_many({"name":"伯约"},{"$set":{"age":100}})#修改多个
#6.查询数据
result=collection.find({"age":100})#可查任意个
for i in result:
print(i)
result=collection.find_one({"age":100})#查询一个
print(result)
except Exception as e:
print(e)
finally:
#关闭数据库
mongo_py.close()
4、Redis
简单使用
import redis
#1.连接数据库 redis是键值数据库
client=redis.StrictRedis(host='127.0.0.1',port=6379)
#2.设置key
key='pyone'
#3.增
result=client.set(key,'1')
#4.删
#result=client.delete(key)
#5.改
result=client.set(key,'2')
#6.查
result=client.get(key)
print(result)
5、MySQL
具体使用太多就不写了。
- ASP.NET MVC的Model元数据与Model模板:模板的获取与执行策略
- python3.6抓取100知乎用户头像详解(四)
- 从运营商小广告到HTTPS
- .NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]
- 区块链:为什么它不仅仅是比特币?
- Java Mail(二):JavaMail介绍及发送一封简单邮件
- ASP.NET MVC Controller激活系统详解:总体设计
- .NET Core采用的全新配置系统[7]: 将配置保存在数据库中
- Selenium3+Python3环境部署
- Java Mail(三):Session、Message详解
- .NET Core采用的全新配置系统[8]: 如何实现配置与源文件的同步
- 四个问答让你秒懂区块链原理及应用
- .NET Core采用的全新配置系统[9]: 为什么针对XML的支持不够好?如何改进?
- 【机器学习实战】第11章 使用 Apriori 算法进行关联分析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法