python 生成数据后导入 excel

本贴最后更新于 2023 天前,其中的信息可能已经事过境迁

前言

在我们日常测试中,有时候需要造一些基础数据,比如,笔者想造 10 条数据,每条数据显示姓名和年龄,自然,少量数据我们可以在 excel 中手动输入,但我们也可以通过简单的脚本来实现

第一步:确保安装第三方库 xlwt,具体安装步骤,可以参照 blogPython 之安装第三方模块

第二步:打开 pycharm,输入以下代码

import random, xlwt
names = ['王静', '侯哲宇','李耳']

# 创建一个workbook,此处的workbook相当于excel,然后设置编码
workbook = xlwt.Workbook(encoding = 'utf-8')

# 创建一个worksheet,此处的worksheet指的是打开excel后,下方的sheet,此处sheet命名为wangjing
worksheet = workbook.add_sheet('wangjing')


for i, name in enumerate(names):

   # 写入excel
   # 参数对应 行, 列, 值
   worksheet.write(i, 0, label=name)
   worksheet.write(i, 1, label=random.randrange(20, 40))

# 保存,然后到指定的路径下打开Excel_test.xls即可
workbook.save('Excel_test.xls')

第三步:代码解析

导入第三方模块 random 和 xlwt

import random, xlwt

random()函数,上面的代码中用到的函数是 random.randrange(20,40),代表随机生成 20-39 的数字,不包括 40

创建一个列表

names = ['王静', '侯哲宇','李耳']

创建一个 worksheet

# 创建一个worksheet,此处的worksheet指的是打开excel后,下方的sheet,此处sheet命名为wangjing
worksheet = workbook.add_sheet('wangjing')

94.png

enumerate()函数解析

enumerate函数
函数原型:enumerate(sequence, [start=0])
功能:将可循环序列sequence以start开始分别列出序列数据和数据下标
即对一个可遍历的数据对象(如列表、元组或字符串),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标

举例说明:
 product = [
        "book",
        "iPhone",
        "car"
   ]
 for index,item in enumerate(product):
      print(index,item)
 

得到以下结果 
0     book
1    iPhone
2    car

注意:此处的index指的是0,1,2

也可以使用enumerate函数的第二个参数:
for index,item in enumerate(product,1):  #第二个参数表示下标开始的位置,取值为1即表示下标从1开始计算,默认从0开始
       print(index,item)
       
       
得到以下结果
1 book
2   iPhone
3   car

worksheet.write()参数用法

参考官方文档:https://xlwt.readthedocs.io/en/latest/api.html?tdsourcetag=s_pctim_aiomsg

write(r, c, label='', style=<xlwt.Style.XFStyle object>)

Parameters:	
r – The zero-relative number of the row in the worksheet to which the cell should be written.
c – The zero-relative number of the column in the worksheet to which the cell should be written.
label –The data value to be written.

图片 95.png

以上,over

原创申明:以上内容都是笔者经验总结,仅供参考,如需转载,请注明出处

  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    543 引用 • 672 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...