prepareNote
用python完成数据准备小工具
背景
因为平时的测试工作中,数据准备工作内容重复性高、花费时间长、具有一定的共性,所以想开发一款帮助完成数据准备的小工具,以此来提升工作效率。
一、需求分析
根据提供的一些字段,对每个进行补位等处理,并将其组合成一条总位数恒定的数据,最终将其保存在DAT文件中。
输入:二维数组,格式一致,行对应一条数据,列对应动态的字段。
输出:DAT文件,其中每条数据各占一行,文件名可定义。
1 | 样例: |
二、思路梳理
- 定义一个二维数组,用于存放输入数据。
- 逐行对数组的第1列元素进行处理,将其转换成10位数字,不足10位前面补0,大于10位报错,并在其尾部补一位逗号及空格。
- 逐行对数组的第2列元素进行处理,将其转换成9位数字,不足9位前面补0,大于9位报错。
- 逐行对数组的第3列元素进行处理,检查其是否长度为6,否则报错。
- 逐行对数组的第4列元素进行处理,检查其长度是否为8,否则报错。
- 将处理后的数组进行拼接,末尾用空格自动补齐40位。
- 每一行数组生成一条40位的数据,每条数据之间换行。
- 将处理好的数据转成DAT文件,命名为test1.DAT。
三、实现方法
- 前补位方法
该方法用于对输入数据数据进行前面补位的处理,三个参数分别是:需处理的字段、处理后字段的长度、填充字符。
1 | def pad_start(string,length,char,): |
- 后补位方法
该方法用于对输入数据数据进行末尾补位的处理,三个参数分别是:需处理的字段、处理后字段的长度、填充字符。
1 | def pad_end(string,length,char): |
- 拼接方法
利用python的join函数,该函数的功能是将列表中的元素进行拼接。
1 | #将列表各字段拼接成一个字符串 |
- 文件读取
file对象可以用来做大部分的文件操作,但是目前本人只学习了打开文件及写文件两种方法:
1 | file = open ("SCL002U.DAT","x") |
- 打开文件
file_name:即你需要打开或者新建的文件名
access_mode:打开文件的模式,有只读、写入等等 ,我这里用到的参数是x,即新建一个文件,并对其忽悠写入的权限。
buffering:跟寄存有关,暂未了解更多
1 | file object = open(file_name [, access_mode][, buffering]) |
- 写文件
这里用到的是write()方法,该方法可以将任何字符串写在已打开的文件中。
1 | file.write() |
四、总结回顾
这个数据准备小工具算是我第一个用python语言完成的小作品,虽然拖延了好几天,但看到DAT文件中的那两行字符串,心中依然是充满了成就感。^_^通过完成这个小工具,一定程度上克服了对敲代码的心里排斥感,也增强了我继续学习的信心和勇气。很难想象两年以前的我为了逃避写代码这件事,做出了现在看来完全错误的决定,当时的我没有直面自己内心真实的勇气,我不知道在做什么,但是我在逃避。
完成这个小工具的过程,也体现了我自身的很多不足之处。第一点就是拖延,一想到要写代码就觉得焦虑,应该减少对焦虑的感受,要忽略它,然后坐下来开始写;第二点是python语法基础薄弱,很多基本的函数不了解,语法报错较多,需要更多的学习和积累;第三点是对于陌生的知识点,不求甚解,这一点非常不好,缺乏钻研精神,应尝试多去了解一步,敢于提问敢于质疑。
当然,这个小工具还是存在很多的局限,后期我会尝试做出一些优化。