共享数据的主程序/子程序风格:
1、体系结构图:
2、简述体系结构各部件的主要功能,实现思想。
输入:从文件读入文章,按行存入集合。
循环移动:访问行集合,循环移动后更新集合。
排序:访问行集合,排序后更新集合。
输出:以输出流形式输出行集合。
3、写出主要的代码
lineList = [] def input(): fr = open(r"D:\Desktop\KWIC\inputText.txt") print(‘-----Input-----‘) for line in fr.readlines(): line = line.strip(‘\n‘) print(line) lineList.append(line) def circshift(): for line in lineList: charList = line.split() for i in range(len(charList)): charList = charList[1:] + charList[:1] newLine = ‘ ‘.join(charList) if newLine not in lineList: lineList.append(newLine) def sort(): lineList.sort() def output(): print(‘-----Output-----‘) for line in lineList: print(line) if __name__ == ‘__main__‘: input() circshift() sort() output()
4、显示结果:
管道-过滤器风格:
1、体系结构图:
2、简述体系结构各部件的主要功能,实现思想。
输入:输入文件,输入行列表。
循环移动:输入行列表,输出循环移动后的扩展列表。
排序:输入列表,有序输出原列表。
输出:输入列表,以输出流形式输出。
3、写出主要的代码
def input(fileName): fr = open(fileName) lineList = [] print(‘-----Input-----‘) for line in fr.readlines(): line = line.strip(‘\n‘) print(line) lineList.append(line) return lineList def circshift(lineList): for line in lineList: charList = line.split() for i in range(len(charList)): charList = charList[1:] + charList[:1] newLine = ‘ ‘.join(charList) if newLine not in lineList: lineList.append(newLine) return lineList def sort(lineList): return sorted(lineList) def output(lineList): print(‘-----Output-----‘) for line in lineList: print(line) if __name__ == ‘__main__‘: fileName = r"D:\Desktop\KWIC\inputText.txt" lineList = input(fileName) extendedList = circshift(lineList) sortedList = sort(extendedList) output(sortedList)
4、显示结果:
实验总结
没遇到什么问题,因为Python很好用。
人生苦短,我用Python。
时间: 2024-10-18 04:53:02