加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python pandas 自动生成批量测试数据插入数据库 mysql

发布时间:2020-12-20 12:50:16 所属栏目:Python 来源:网络整理
导读:1、python连接数据库游标 # coding:utf-8 from sqlalchemy import create_engine class connet_databases: def __init__ (self): ‘‘‘ # 初始化数据库连接,使用pymysql模块 # MySQL的用户:root,密码:147369,端口:3306,数据库:mydb ‘‘‘ _host = ‘ 3

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 = rmysql+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、结果测试

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读