利用Python生成大量递增的相同位数的数字字符串(00001,00002,00003,...)

背景

1.对ECShop作性能测试过程中,为了模拟大量用户(2h,5w业务量)登录ECShop的场景,需要在ECShop的数据库中预先注册成功足够数量的用户。为确保有效登录用户达到5w,数据库需要准备注册超过5w的用户,如:注册6w用户
2.注册用户名的格式为:Test{uid},uid作为参数,需要从txt或csv文件批量读取数字字符串(00001,00002,00003,…,49999,50000)
3.预期注册的用户名为:Test00001,Test00002,Test00003,…,Test49999,Test50000

本次目标

利用Python代码实现生成6w个递增的相同位数的数字字符串

具体需要:

从数字1到60000,顺序输出每个数字对应的数字字符串均为5位数,不足5位以0补足

预期效果如下:
——————————-
00001
00002
00003
……
59999
60000
——————————-

代码实现

方法1:对字符串直接格式化

执行代码:

file = open('D:\\CI_Env\\TestData\\RegisterData.txt','w')

for i in range(1,60001):
    file.write(("%05d" % i)+'\n')

file.close()

执行结果:

《利用Python生成大量递增的相同位数的数字字符串(00001,00002,00003,...)》

字符串格式化控制:%[(name)][flags][width].[precision]typecode

参数含义
(name)命名
flags可有:+-''0
+:表示右对齐
-:表示左对齐
'':为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐
0:表示使用0填充
width表示显示的宽度
precision表示小数点后的精度
typecode类型码,用以控制显示的类型。如:%d代表十进制整数,%s代表字符串
方法2:调用格式化方法 str.format()进行控制

执行代码:

file = open('D:\\CI_Env\\TestData\\RegisterData.txt','w')

for i in range(1,60001):
    file.write(("{:0>5d}".format(i))+'\n')

file.close()

《利用Python生成大量递增的相同位数的数字字符串(00001,00002,00003,...)》

PS:
1.本次生成的数字字符串写入txt文件中,因数据量相对较大,为避免打开出现卡顿现象,建议用专业文本编辑器(如:Notepad++)打开此文件
2.实现递增数字字符串,若数量不大,则也可在Excel中设置拖动产生;若数据量较大,则需要考虑实现的效率及可靠性,最好利用python代码实现

参考资料:
[1] Python补充05 字符串格式化 (%操作符)
[2] Python format 格式化函数
[3] 用python3生成一个0001,0002,0003~9998,9999组成的txt文件,不足四位的自动加0补足
[4] 如何用python生成一个顺序标号的txt文件?
[5] 两种方法输出以下内容”’ 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 ”’

    原文作者:Fighting_001
    原文地址: https://www.jianshu.com/p/b387e93ba443
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞