当前位置: 首页 > article >正文

Python使用Faker库生成伪数据

Faker可以生成各种各样的伪数据
#模块安装

  • 安装Faker:pip install -i https://mirrors.aliyun.com/pypi/simple/ Faker

引用

from fk import Faker

fk = Faker(locale="zh-CN")

使用

中文姓名类

  • fk.name():姓名
  • fk.last_name():姓
  • fk.first_name():名
  • fk.name_male():男性姓名
  • fk.name_female():女性姓名
from faker import Faker
fk = Faker(locale="zh-CN")
print(fk.name()) # 随机生成一个姓名

地址类

  • fk.country():国家
  • fk.province():省份
  • fk.city():城市
  • fk.address():地址(带邮编)
  • fk.street_address():街道
  • fk.postcode():邮编

公司类

  • fk.company():公司名
  • fk.job ():工作职位
  • fk.phone_number():手机号
  • fk.ssn():身份证号
  • fk.email():电子邮箱

中文字符类

  • fk.text(max_nb_chars):随机中文文本(nb代表最大字符数)
  • fk.sentence(nb):随机一句中文文本(nb代表词语数)
  • fk.sentences(nb):随机生成多句话(nb代表词语数)
  • fk.paragraph(nb):随机中文段落(nb代表句子数)
  • fk.paragraphs(nb):随机生成多个段落(nb代表句子数)
  • fk.word():随机1个中文词语
  • fk.words(nb):随机生成多个词语(nb代表词语数量)

英文字符类

  • fk.pystr():随机英文字符串,eg:jdZRgkOpaAAxJdjtDcXu
  • fk.random_element():随机字母
  • fk.random_letter():随机字母
  • boolean():随机True/False
  • password(length):随机生成密码

数字类

  • fk.random_int(min=0, max=9999):随机范围内数字
  • fk.random_element(elements):随机选取1个元素
  • fk.pyfloat(left_digits,right_digits,positive):随机生成小数(整数位数,小数位数,是否只有正数)
print(fk.pyfloat(3,2,True)) # 805.98
print(fk.pyfloat(3,2,False)) # -935.49
  • fk.rnumerify():随机三位数字
  • fk.random_digit():0~9随机数
  • fk.random_digit_not_null():1~9随机数

日期类

  • fk.date():随机日期(eg:1997-11-13)
  • fk.time():随机时间(eg:09:07:10)
  • fk.date_time():随机日期+时间(eg:2002-03-11 20:38:45)
  • fk.date_between(start_date,end_date):随机范围内日期
  • fk.year():随机年份
  • fk.month():随机月份
  • fk.day_of_week():随机星期
start_date = datetime.date(2000, 6, 12)
end_date = datetime.date(2024, 11, 4)
print(fk.date_between(start_date,end_date))

应用

from faker import Faker

fk = Faker(locale="zh-CN")
students = [["序号", "姓名", "性别", "手机号码", "出生日期", "身份证号码", "电子邮箱", "家庭地址", "备注"]]
# 生成20条伪学生数据
for i in range(20):
    students.append([
        i + 1,
        fk.name(),
        fk.random_element(["男", "女"]),
        fk.phone_number(),
        str(fk.date_between(start_date="-20y", end_date="-15y")),  # 前20年~15年
        fk.ssn(min_age=15, max_age=20),
        fk.email(),
        fk.address(),
        fk.text(max_nb_chars=20)
    ])
# 打印伪学生数据
for student in students:
    print(student)

在这里插入图片描述


http://www.kler.cn/a/390811.html

相关文章:

  • 2024版本IDEA创建Sprintboot项目下载依赖缓慢
  • 事件循环 -- 资源总结(浏览器进程模型、事件循环机制、练习题)
  • 【深圳大学】数据结构A+攻略(计软版)
  • redhat虚拟机
  • 操作系统离散存储练习题
  • Vite初始化Vue3+Typescrpt项目
  • 从0开始学 docker (每日更新 24-11-8)
  • leetcode21. Merge Two Sorted Lists
  • Leetcode 检测相邻递增子数组
  • LeetCode 93-复制 IP地址
  • MYSQL知识总结
  • uni-app选项卡制作 ⑥
  • 【网络安全渗透测试零基础入门】之SNMP放大攻击原理及实战演示,零基础入门到精通,收藏这一篇就够了!
  • 【c语言】memmove函数的使用和模拟实现
  • 【Linux】获得同一子网下当前在线设备IP/Latency/MAC 通过nmap指定CIDR扫描当前在线设备
  • Redis在docker中的主从,哨兵配置
  • kafka消费者的消费分区策略有哪些,默认是哪个?
  • C#-命名空间
  • qsqlmysql.lib的编译和使用
  • Java接收xml格式参数转为json
  • sql注入基础知识
  • 海柔仿真系统存储实践:混合云架构下实现高可用与极简运维
  • 【cft.show-web3解题思路】-php://input伪协议
  • 行业类别-金融科技-子类别区块链技术-细分类别智能合约-应用场景供应链金融课题
  • Python 正则表达式使用指南
  • Vue页面假死点不动现象Cannot read properties of undefined(reading ‘_wrapper‘)报错