开发说明:前两天刚开始学习Python,但是厌烦了Hello World这类没用的东东,于是就自己边学边做,花了一天时间完成了这个稍微复杂的小应用;麻雀虽小五脏俱全,作为初学者的例程还是很有指导意义的,真正做到从入门到精通,欢迎大家指正。
文本文件内容排序功能:
每行是一条记录,每行可以有多列,列间按预定义的分隔符分隔;
可以按单列或多列组合排序,每列的顺序可以设置为反序或者正序;
列的数据类型可以是字符串、整数、浮点数,比较排序时按指定的数据类型比较大小;
排序算法可以单线程执行(适用于小文件),也可以多线程执行(适用于大文件,分隔排序后再归并);
使用了如下技术要点:命令行参数面向对象字符串解析文件读取,写入多线程、线程池、队列、线程同步文件归并排序
导入的库:
import sysimport getopt
import threading
import time
import queue from functools
import cmp_to_key from tempfile
import TemporaryFile from datetime
import datetime
命令行说明:sort.py -i <input_filename> -o <output_filename> [-d <delimeter>] [-c <columns>] [-s <size>] [-t <threadCount>]
-i 输入源文件名
-o 输出目标文件名,如果未指定,则结果覆盖到源文件
-d 可选