今天心血来潮,想搞个小玩意儿,名字叫“streemster”。就是想弄个能处理流数据的工具,方便以后捣鼓数据啥的。下面就跟大家伙儿唠唠我是咋一步步把它弄出来的。
准备工作
我先琢磨着要用啥工具。想来想去,还是用 Python ,简单方便,库也多,省得我再费劲巴拉地学新东西。然后,我得找个地儿放代码,就直接在电脑上新建个文件夹,起名叫“streemster”。
搭架子
有地儿,就开始搭架子。我先建个文件,叫 ,这是咱的主程序。然后琢磨着,这玩意儿得能接收数据、处理数据、还能输出数据,所以又建几个文件,分别叫 、 和 ,用来放这些功能的代码。
接收数据
先从接收数据开始。我在 里写个函数,叫 read_data
。这函数很简单,就是打开一个文件,一行一行地把里面的数据读出来。为让这函数更灵活,我还加个参数,让用户可以自己指定要读取的文件名。
代码大概长这样:
- def read_data(filename):
- with open(filename, 'r') as f:
- for line in f:
- yield *()
处理数据
数据读进来,接下来就得处理。我在 里写个函数,叫 process_data
。这函数接收一个数据,然后对它进行一番操作。具体咋操作?这得看具体需求。比如,我可以把数据里的字母都变成大写,或者把数字都加起来。想咋处理就咋处理。
我这儿就简单点,把数据里的空格都去掉:
- def process_data(data):
- return *(' ', '')
输出数据
数据处理完,一步就是输出。我在 里写个函数,叫 write_data
。这函数接收一个数据,然后把它写到一个文件里。和 read_data
一样,我也加个参数,让用户可以自己指定输出的文件名。
代码如下:
- def write_data(data, filename):
- with open(filename, 'a') as f:
- *(data + '\n')
把它们串起来
各个部分都准备好,一步就是把它们串起来。我在 里写段代码,先调用 read_data
读取数据,然后把读到的数据传给 process_data
处理,把处理后的数据传给 write_data
输出。
- from input import read_data
- from process import process_data
- from output import write_data
- if __name__ == '__main__':
- for data in read_data('*'):
- processed_data = process_data(data)
- write_data(processed_data, '*')
运行起来
代码写完,接下来就是见证奇迹的时刻!我先准备个 文件,里面随便写点数据。然后运行 ,Duang!程序跑起来!处理后的数据乖乖地躺在 文件里。
当然这只是最简单的版本,后面还可以根据需要不断完善,让它更强大,更灵活。不过今天就先到这儿,改天再继续折腾!