题目:
a.生成数字从4757到200128,放到一个文件中 。
b.做数据冗余加密,生成5个文件 。
c.任意3个文件都可恢复原文件
生成5个文件的脚本:
#!/usr/bin/env python f=open('out.txt','a') for i in range(4757,200129): f.write(str(i) + '\n') f.close() f_list=['f1.txt','f2.txt','f3.txt','f4.txt','f5.txt'] for line in open('out.txt'): open(f_list[0],'a').write(str(int(line) % 53) +'\n') open(f_list[1],'a').write(str(int(line) % 59) +'\n') open(f_list[2],'a').write(str(int(line) % 64) +'\n') open(f_list[3],'a').write(str(int(line) % 67) +'\n') open(f_list[4],'a').write(str(int(line) % 71) +'\n')
##
测试还原文件:
#!/usr/bin/env python
a1=open(‘f1.txt’).readlines()
a2=open(‘f3.txt’).readlines()
a3=open(‘f5.txt’).readlines()
for num in zip(a1,a2,a3):
for i in range(4757,200129):
if i % 53 == int(num[0]) and i % 64 == int(num[1]) and i % 71 == int(num[2]):
open(‘t.txt’,’a’).write(str(i) + ‘\n’)
break