IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 使用python造批量假数据存在excel中 -> 正文阅读

[Python知识库]使用python造批量假数据存在excel中

# -*- coding: utf-8 -*- 
# @Time : 2021/12/15 11:02 
# @Author : gaomingjian 
# @Site :  
# @File : create_data_dalian.py 
# @Software: PyCharm

from random import choice, randint
import string
import codecs
import random
from openpyxl import Workbook

##常用汉字编码表
StringBase = '\u7684\u4e00\u4e86\u662f\u6211\u4e0d\u5728\u4eba\u4eec\u6709\u6765\u4ed6\u8fd9\u4e0a\u7740\u4e2a\u5730\u5230\u5927\u91cc\u8bf4\u5c31\u53bb\u5b50\u5f97\u4e5f\u548c\u90a3\u8981\u4e0b\u770b\u5929\u65f6\u8fc7\u51fa\u5c0f\u4e48\u8d77\u4f60\u90fd\u628a\u597d\u8fd8\u591a\u6ca1\u4e3a\u53c8\u53ef\u5bb6\u5b66\u53ea\u4ee5\u4e3b\u4f1a\u6837\u5e74\u60f3\u751f\u540c\u8001\u4e2d\u5341\u4ece\u81ea\u9762\u524d\u5934\u9053\u5b83\u540e\u7136\u8d70\u5f88\u50cf\u89c1\u4e24\u7528\u5979\u56fd\u52a8\u8fdb\u6210\u56de\u4ec0\u8fb9\u4f5c\u5bf9\u5f00\u800c\u5df1\u4e9b\u73b0\u5c71\u6c11\u5019\u7ecf\u53d1\u5de5\u5411\u4e8b\u547d\u7ed9\u957f\u6c34\u51e0\u4e49\u4e09\u58f0\u4e8e\u9ad8\u624b\u77e5\u7406\u773c\u5fd7\u70b9\u5fc3\u6218\u4e8c\u95ee\u4f46\u8eab\u65b9\u5b9e\u5403\u505a\u53eb\u5f53\u4f4f\u542c\u9769\u6253\u5462\u771f\u5168\u624d\u56db\u5df2\u6240\u654c\u4e4b\u6700\u5149\u4ea7\u60c5\u8def\u5206\u603b\u6761\u767d\u8bdd\u4e1c\u5e2d\u6b21\u4eb2\u5982\u88ab\u82b1\u53e3\u653e\u513f\u5e38\u6c14\u4e94\u7b2c\u4f7f\u5199\u519b\u5427\u6587\u8fd0\u518d\u679c\u600e\u5b9a\u8bb8\u5feb\u660e\u884c\u56e0\u522b\u98de\u5916\u6811\u7269\u6d3b\u90e8\u95e8\u65e0\u5f80\u8239\u671b\u65b0\u5e26\u961f\u5148\u529b\u5b8c\u5374\u7ad9\u4ee3\u5458\u673a\u66f4\u4e5d\u60a8\u6bcf\u98ce\u7ea7\u8ddf\u7b11\u554a\u5b69\u4e07\u5c11\u76f4\u610f\u591c\u6bd4\u9636\u8fde\u8f66\u91cd\u4fbf\u6597\u9a6c\u54ea\u5316\u592a\u6307\u53d8\u793e\u4f3c\u58eb\u8005\u5e72\u77f3\u6ee1\u65e5\u51b3\u767e\u539f\u62ff\u7fa4\u7a76\u5404\u516d\u672c\u601d\u89e3\u7acb\u6cb3\u6751\u516b\u96be\u65e9\u8bba\u5417\u6839\u5171\u8ba9\u76f8\u7814\u4eca\u5176\u4e66\u5750\u63a5\u5e94\u5173\u4fe1\u89c9\u6b65\u53cd\u5904\u8bb0\u5c06\u5343\u627e\u4e89\u9886\u6216\u5e08\u7ed3\u5757\u8dd1\u8c01\u8349\u8d8a\u5b57\u52a0\u811a\u7d27\u7231\u7b49\u4e60\u9635\u6015\u6708\u9752\u534a\u706b\u6cd5\u9898\u5efa\u8d76\u4f4d\u5531\u6d77\u4e03\u5973\u4efb\u4ef6\u611f\u51c6\u5f20\u56e2\u5c4b\u79bb\u8272\u8138\u7247\u79d1\u5012\u775b\u5229\u4e16\u521a\u4e14\u7531\u9001\u5207\u661f\u5bfc\u665a\u8868\u591f\u6574\u8ba4\u54cd\u96ea\u6d41\u672a\u573a\u8be5\u5e76\u5e95\u6df1\u523b\u5e73\u4f1f\u5fd9\u63d0\u786e\u8fd1\u4eae\u8f7b\u8bb2\u519c\u53e4\u9ed1\u544a\u754c\u62c9\u540d\u5440\u571f\u6e05\u9633\u7167\u529e\u53f2\u6539\u5386\u8f6c\u753b\u9020\u5634\u6b64\u6cbb\u5317\u5fc5\u670d\u96e8\u7a7f\u5185\u8bc6\u9a8c\u4f20\u4e1a\u83dc\u722c\u7761\u5174\u5f62\u91cf\u54b1\u89c2\u82e6\u4f53\u4f17\u901a\u51b2\u5408\u7834\u53cb\u5ea6\u672f\u996d\u516c\u65c1\u623f\u6781\u5357\u67aa\u8bfb\u6c99\u5c81\u7ebf\u91ce\u575a\u7a7a\u6536\u7b97\u81f3\u653f\u57ce\u52b3\u843d\u94b1\u7279\u56f4\u5f1f\u80dc\u6559\u70ed\u5c55\u5305\u6b4c\u7c7b\u6e10\u5f3a\u6570\u4e61\u547c\u6027\u97f3\u7b54\u54e5\u9645\u65e7\u795e\u5ea7\u7ae0\u5e2e\u5566\u53d7\u7cfb\u4ee4\u8df3\u975e\u4f55\u725b\u53d6\u5165\u5cb8\u6562\u6389\u5ffd\u79cd\u88c5\u9876\u6025\u6797\u505c\u606f\u53e5\u533a\u8863\u822c\u62a5\u53f6\u538b\u6162\u53d4\u80cc\u7ec6'


# StringBase = ''.join(StringBase.split('\\u')) #转换为汉字


# 每条信息包括:交易日期、流水号、凭证号、借记金额、账户余额、对方户名、对方账号、对方开户行、摘要、附言
# 借记金额 ,random.randint(参数1,参数2),参数必须是整数,返回两个参数中随机的任意数字。
def getJie():
    return str(random.randint(200, 2000))


def getKaiHuHang():
    return random.choice(('北京市分行', '天津市分行', '上海市分行', '重庆市分行', '河北省分行', '山西省分行', '辽宁省分行', '吉林省分行', '黑龙江省分行', '江苏省分行',
                          '浙江省分行', '安徽省分行', '福建省分行',
                          '江西省分行', '山东省分行', '河南省分行', '湖北省分行', '湖南省分行', '广东省分行', '海南省分行', '四川省分行', '贵州省分行', '云南省分行',
                          '陕西省分行', '甘肃省分行', '青海省分行',
                          '台湾省分行', '内蒙古自治区分行', '广西壮族自治区分行', '西藏自治区分行', '宁夏回族自治区分行', '新疆维吾尔自治区分行', '香港特别行政区分行',
                          '澳门特别行政区分行'))


# 交易日期
def getJiaoYiRiQi():
    return random.choice(('2021-12-01', '2021-12-02', '2021-12-03', '2021-12-04', '2021-12-05', '2021-12-06',
                          '2021-12-07', '2021-12-08', '2021-12-09'))


# 流水号
def getSerialNumber():
    return ''.join((str(random.randint(0, 9)) for i in range(18)))


# 凭证号
def getCertificateNumber():
    return ''.join((str(random.randint(0, 9)) for i in range(10)))


# 借记金额
def getDebitAmount():
    return str(random.randint(200, 2000))


# 贷记金额
def getCreditAmount():
    return str(random.randint(200, 1000))


# 账户余额
def getAccountBalance():
    return str(random.randint(10000, 20000))


# 对方户名
def OtherAccount():
    return '张三'


# 对方账号
def getOtherBank():
    return ''.join((str(random.randint(0, 9)) for i in range(18)))


def main(filename, exc):
    ##每条信息包括:交易日期、流水号、凭证号、借记金额、账户余额、对方户名、对方账号、对方开户行、摘要、附言


    with open(filename, 'w', encoding='utf-8') as fp:
        fp.write('TransactionDate, SerialNumber, CertificateNumber, DebitAmount, CreditAmount, AccountBalance,'
                 'OtherAccount, Other, OtherBank, Abstract, PS\n')
        ##fn = r'dalian.xlsx'                       #文件名
        wb = Workbook()  # 创建工作簿
        ws = wb.create_sheet(title='dalian')  # 创建工作表
        ws['A1'] = '交易日期'  # 单元格赋值
        ws['B1'] = '流水号'
        ws['C1'] = '凭证号'
        ws['D1'] = '借记金额'
        ws['E1'] = '贷记金额'
        ws['F1'] = '账户余额'
        ws['G1'] = '对方户名'
        ws['H1'] = '对方账号'
        ws['I1'] = '对方开户行'
        ws['J1'] = '摘要'
        ws['K1'] = '附言'

        for i in range(5000):
            # 交易日期
            TransactionDate = getJiaoYiRiQi()
            # 流水号
            SerialNumber = getSerialNumber()
            # 凭证号
            CertificateNumber = getCertificateNumber()
            # 借记金额
            DebitAmount = getDebitAmount()
            # 贷记金额
            CreditAmount = getCreditAmount()

            # 账户余额
            AccountBalance = getAccountBalance()
            # 对方户名
            # OtherAccount = '张三'
            # 对方账号
            Other = getOtherBank()
            # 对方开户行
            OtherBank = getKaiHuHang()
            # 摘要
            Abstract = '无'
            # 附言
            PS = '暂无附言'

            ws.append([TransactionDate, SerialNumber, CertificateNumber, DebitAmount, CreditAmount, AccountBalance,
                       OtherAccount, Other, OtherBank, Abstract, PS])
            ##添加一行数据
            line = ','.join(
                [TransactionDate, SerialNumber, CertificateNumber, DebitAmount, CreditAmount, AccountBalance,
                 OtherAccount, Other, OtherBank, Abstract, PS]) + '\n'
            fp.write(line)
        wb.save(exc)


##out
def output(filename):
    with open(filename, 'r', encoding='utf-8') as fp:
        for line in fp:
            print(line)


if __name__ == '__main__':
    filename = 'newdalian.txt'  ##write txt
    exc = r'newdalian.xlsx'  ##write exc
    main(filename, exc)
    output(filename)  # out

'''
import openpyxl
from openpyxl import Workbook
fn = r'test.xlsx'                       #文件名
wb = Workbook()                            #创建工作簿
ws = wb.create_sheet(title='你好,世界')    #创建工作表
ws['A1'] = '这是第一个单元格'                #单元格赋值
ws['B1'] = 3.1415926
wb.save(fn)                                 #保存Excel文件
wb = openpyxl.load_workbook(fn)             #打开已有的Excel文件
ws = wb.worksheets[1]                       #打开指定索引的工作表
print(ws['A1'].value)                       #读取并输出指定单元格的值
ws.append([1,2,3,4,5])                      #添加一行数据
ws.merge_cells('F2:F3')                     #合并单元格
ws['F2'] = "=sum(A2:E2)"                    #写入公式
for r in range(10,15):
    for c in range(3,8):
        ws.cell(row=r, column=c, value=r*c) #写入单元格数据
wb.save(fn)
'''

效果展示:生成5000条数据,条数在循环里面改变参数即可。

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-18 15:55:49  更:2021-12-18 15:57:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:24:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码