python pandas 自动生成批量测试数据插入数据库 mysql
1、python连接数据库游标
# coding:utf-8 from sqlalchemy import create_engine class connet_databases:
def __init__(self):
'''
# 初始化数据库连接,使用pymysql模块
# MySQL的用户:root, 密码:147369, 端口:3306,数据库:mydb
''' _host = '39.108.131.88'
_port = 3306
_databases = 'san_jin_sq' # 'produce' # _username = 'wuzaipei'
_password = 'wuzaipei' self._connect = r'mysql+pymysql://{username}:{password}@{host}:{port}/{databases}'.format(
username=_username,
password=_password,
host=_host,
port=_port,
databases=_databases) engine = create_engine(connet_databases()._connect, echo=True)
2、随机字符串类型自动生成
coding:utf-8
import random # 随机生成n个字符串列表
def randomGenerateList(al,n=0):
'''
:param al: 字符串列表 ['八戒','悟空','物镜','师父']
:param n: n 为生成字符串列表的长度
:return:
'''
alist = list(al)
return [random.choice(alist) for _ in range(n)] def dict_conversion(col,dict_list):
'''
:param col: 数据库字段
:param dict_list: 把所有字段列表添加在dict里面
:return: 合并成一个表
'''
col_ = list(col)
dict_list_ = list(dict_list)
return dict(zip(col_,dict_list_))
3、一个小案例
import random
import uuid
from updateMsql.connectDatabases import engine
from updateMsql.generateDemand import randomGenerateList,dict_conversion
import pandas as pd
col = [ 'id','日期','品种','批号','销售数量', '销售金额']
date = pd.date_range('2018-7-11', '2019-10-30',freq='1D')
n_index = date.__len__()
ID = [_ for _ in range(n_index)]
field1 = randomGenerateList(['三金片','西瓜霜润喉片','桂林西瓜霜(喷剂)','西瓜霜清咽含片'],n_index)
field2 = randomGenerateList(['1001','1002','1003','1004','1005','1006'],n_index)
field3 = [random.randint(100,500) for i in range(n_index)]
field4 = [random.randint(500,1000) for j in range(n_index)] data = pd.DataFrame(data=dict_conversion(col,[ID,date,field1,field2,field3,field4])) data.to_sql('销售情况分析',engine,if_exists='replace',index=False)
print(data.head())
print("----插入成功-----")
4、结果测试

python pandas 自动生成批量测试数据插入数据库 mysql的更多相关文章
- mysql快速生成批量测试数据
mysql快速生成批量测试数据 参考资料: https://blog.csdn.net/oahz4699092zhao/article/details/53332148 -- 创建一个临时内存表 ; ...
- .net mvc 站点自带简易SSL加密传输 Word报告自动生成(例如 导出数据库结构) 微信小程序:动画(Animation) SignalR 设计理念(一) ASP.NET -- WebForm -- ViewState ASP.NET -- 一般处理程序ashx 常用到的一些js方法,记录一下 CryptoJS与C#AES加解密互转
.net mvc 站点自带简易SSL加密传输 因项目需要,传输数据需要加密,因此有了一些经验,现简易抽出来分享! 请求:前端cryptojs用rsa/aes 或 rsa/des加密,后端.net ...
- 使用Myeclipse10.0自动生成搭建SSH框架(数据库表自动反向转换成Hibernate实体)实现用户登陆
我这里使用的数据库是mysql5.0 数据是上课用的.这些都不是重点,重要的是学会这个方法: 创建好数据库: create database jboadefault character set utf ...
- Springboot 系列(十一)使用 Mybatis(自动生成插件) 访问数据库
1. Springboot mybatis 介绍 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数获取 ...
- Word报告自动生成(例如 导出数据库结构)
将很早之前写的一个小组件重新整理优化一下,做成一个通用的功能.适用于导出数据库的结构(表.字段等)到Word或将体检数据自动生成Word版的体检报告等.代码:Github 一.主要需要完成功能: 1. ...
- (Python)自动生成代码(方法一)
在写某个平台的自动化脚本时,笔者把全部的操作都封装到了两个类中,page.py和commonpage.py: page.py部分代码: class BasePage(object): ''' 页面基础 ...
- Python项目自动生成当前项目的requirements文件
使用pip freeze $ pip freeze > requirements.txt 这种方式是把整个环境中的包都列出来了,如果是虚拟环境可以使用. 通常情况下我们只需要导出当前项目的r ...
- Pycharm 设置python文件自动生成头部信息模板
设置头部信息路径: 打开File—Settings—Editor—File and Code Templates—Python Script 输入要自动生成的头部信息模板 这样,新建py文件就会自动生 ...
- Python实现自动生成小学四则运算题目
Github地址: https://github.com/guoyuyi/gyy.github.io/blob/%E4%BD%9C%E4%B8%9A1/zy1.py 题目描述: 通过python语言编 ...
随机推荐
- 解决bootstrap下的图片自适应问题
.img-responsive { display: block; height: auto; max-width: 100%; }
- Python-一些总结
背景 主要是用来记录我在学习python过程中学习到他人的一些建议和自己的经验,有些内容可能并不妥,如果有请及时通知我纠正,谢谢.qq:472668561 我使用的python版本是3.7.4. 内容 ...
- 【ZOJ3627】Treasure Hunt II
题目大意:给定一个长度为 N 的序列,现有两个人从 P 点出发,每个单位时间每个人最多可以移动一个单位,两人之间的最大距离不能超过 M,一共有 T 单位的时间,求在合法情况下,两人可以获得的序列点权和 ...
- webpack多页应用
本文主要讲了webpack怎么搭建多页应用,熟悉下webpack的基本用法. 新建文件夹,目录结构如下: 然后 cd webpack-test npm init(根目录下创建了一个pakage.jso ...
- webpack4基础配置
网页中常见的静态资源: js: .js .jsx .coffee .ts(TypeScript 类 C# 语言) css: .css .less .sass .scss Images: .jpg .p ...
- JAVA泛型里面各值代表的意义
Java泛型中的标记符含义: E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number ...
- Vue $root、$parent、$refs
Vue处理边界parent.$refs 下面的功能都是有风险的,尽量避免使用 Vue 子组件可以通过 $root 属性访问父组件实例的属性和方法 <div id="app"& ...
- 【NOIP2016提高A组模拟9.17】小a的强迫症
题目 分析 题目要求第i种颜色的最后一个珠子要在第i+1种颜色的最后一个珠子之前, 那么我们从小到大枚举做到第i种,把第i种的最后一颗珠子取出,将剩下的\(num(i)-1\)个珠子插入已排好的前i- ...
- electron启动出现短暂的白屏
mainWindow = new BrowserWindow({ height: 600, width: 960, frame: false, minWidth: 710, minHeight: 50 ...
- js-头部的下拉框出现与隐藏,注意加上stop??
效果: 主要代码: