«

虚拟数据写入表格

admin 发布于 阅读:236 An Ins


以下代码主要实现了以下几个功能:

  1. 定义了一个生成随机性别的函数 random_sex,通过 Faker 库从 '男''女' 中随机选择一个返回。

  2. 定义了一个 data_to_list 函数,用于生成指定数量(通过参数 nums 控制)的虚拟数据。每条数据包括姓名、性别、地址、电子邮件、出生日期和公司,并将这些数据以列表的形式存储在内部列表 inlist 中,然后将 inlist 添加到外部列表 outlist 中。

  3. 调用 data_to_list 函数生成了 5 条虚拟数据,并将结果存储在 data 变量中。

  4. 将生成的虚拟数据列表 data 转换为 DataFrame 格式。

  5. 最后,使用 pandasto_excel 方法将 DataFrame 中的数据写入到名为 output.xlsx 的 Excel 文件中,并且设置不包含索引。

# 虚拟数据写入Excel文件
# 导入模块
import pandas as pd

from datetime import datetime
from faker import Faker
fake = Faker('zh_CN')  # 设置为中文

# 随机性别函数
def random_sex():
    sex = fake.random_element(elements=('男', '女'))
    return sex

# 以追加模式文本文件
def write_to_txt(content):
    with open('example.txt', 'a', encoding='utf-8') as file:
        # 将数据写入文件
        file.write(content)

# 定义一个空列表
outlist = []
def data_to_list(nums):
    for i in range(nums):
        inlist = []  # 定义、重置列表
        # 生成数据
        name = fake.name()
        sex = random_sex()
        address = fake.address()
        email = fake.email()
        date_of_birth = fake.date_of_birth()
        # 自定义日期格式并格式化
        date = datetime.strftime(date_of_birth, "%Y-%m-%d")
        company = fake.company()
        # 写入内部列表
        inlist.append(name)
        inlist.append(sex)
        inlist.append(address)
        inlist.append(email)
        inlist.append(date)
        inlist.append(company)
        # 写入外层列表
        outlist.append(inlist)
    return outlist

data =  data_to_list(5)

# 假设您有一个名为 data 的列表,其中每个元素都是一个包含数据的子列表
# data = [
    # ['张三', '男', '北京市朝阳区', 'zhangsan@example.com', '1990-01-01', 'XX 公司'],
    # ['李四', '女', '上海市浦东新区', 'lisi@example.com', '1995-05-05', 'YY 公司']
# ]

# 将列表转换为 DataFrame
df = pd.DataFrame(data, columns=['姓名', '性别', '地址', '电子邮件', '出生日期', '公司'])

# 写入 Excel 文件
df.to_excel('output.xlsx', index=False)

总的来说,这段代码的主要作用是生成一定数量的虚拟个人信息数据,并将其保存到 Excel 文件中。

python