[python]使用faker库生成测试数据

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: [python]使用faker库生成测试数据

简介

Faker库可用于随机生成测试用的虚假数据。

可生成的数据参考底部的参考链接。

安装:

python -m pip install faker

快速入门

from faker import Faker
# 实例化一个对象,本地化使用中国
fk - Faker(locale="zh_CN")
print(f"{fk.name()} 住在 {fk.address()}")

示例-生成数据并写入到MySQL

import pandas as pd
from sqlalchemy import create_engine
from faker import Faker
import time
fk = Faker(locale='zh-CN')
def create_casefile(nums: int = 10, filename: str = "fakedata.csv"):
    """
    生成虚假数据文件
    Parameters
    ----------
    nums: int, default: 10
        数据量
    filename: str, default: "fakedata.csv"
        虚假数据文件名
    """
    start_time = time.time()
    with open(filename, 'w', encoding='utf8', buffering=4096) as fobj:
        fobj.write("username,phone_number,address,company,job\n")
        # for i in range(nums):
        i = 1
        while i <= nums:
            fobj.write(f"{fk.name()},{fk.phone_number()},{fk.address()},{fk.company()},{fk.job()}")
            if i != nums:
                fobj.write("\n")
            i += 1
    end_time = time.time()
    print(f"共生成 {nums} 条数据, 耗时: {(end_time - start_time):.2f}")
def load_to_mysql(filename: str = "fakedata.csv"):
    """
    将生成的虚拟数据写入到MySQL数据库
    Parameters
    ----------
    filename: str, default: "fakedata.csv"
        虚假数据文件名
    """
    df = pd.read_csv(filename, sep=",")
    print(df.head())
    eng = create_engine("mysql+pymysql://root:123456@192.168.0.10:3306/testdb")
    start_time = time.time()
    print("开始将数据写入到数据库")
    df.to_sql(name="fakedata", con=eng, if_exists="replace")
    end_time = time.time()
    print(f"数据库写入完成, 耗时: {(end_time - start_time):.2f}")
if __name__ == '__main__':
    create_casefile(nums=100000)
    load_to_mysql(filename="fakedata.csv")

参考

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
30天前
|
XML JSON 数据库
Python的标准库
Python的标准库
169 77
|
13天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
31 11
|
14天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
41 10
|
1月前
|
XML JSON 数据库
Python的标准库
Python的标准库
50 11
|
1月前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
72 8
|
1月前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
38 4
|
数据采集 XML 测试技术
Faker 一个生成虚拟数据的Python模块
不会爬虫,没有数据怎么来练习,上次行哥给大家分享过数据集网站,有兴趣的可以看一下
439 0
Faker 一个生成虚拟数据的Python模块
|
1月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
1月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。