1 import sys
2 # 1.打开文件并读取,采取sys在命令行传参
3 f = open(sys.argv[1])
4 w = open(sys.argv[2],'w+')
5
6 f_r = f.readlines()
7
8 i = 1
9 for line in f_r:
10 line.strip()
11 i += 1
12 # 2.计算欧氏距离
13 def distance(i,j):
14 a_list = a.split()
15 b_list = b.split()
16 sum = 0
17 for i in range(len(a_list)):
18 sum += (float(a_list[i]-float(b_list[i]) ** 2
19 sum = sum ** 0.5
20 return sum
21
22 b = 1
23 while b < a:
24 c = 1
25 lst = []
26 while c < a:
27 if c != b:
28 result = distance(dict_line[b],dict_line[c])
29 else:
30 result = 10000
31 lst.append(result) # 得到列表,其索引+1 即为第二行行数
32 c += 1
33 # print(lst)
34 value = min(lst)
35 second = lst.index(value) + 1
36 w.write(str(b) + '\t' + str(second) + '\n')
37 b += 1
38 f.close()
39 w.close()