インポートNPとしてnumpyの インポートのJSON インポートコーデックは #计算编辑距离 DEF :edit_distance(WORD1、WORD2) LEN1 = LEN(WORD1) LEN2 = LEN(WORD2) DP = np.zeros((LEN1 + 1、LEN2 + 1 )) のために私中範囲(LEN1 + 1 ): DP [i]が[0] = 私 のために、J における範囲(LEN2 + 1 ): DP [0] [j]は = Jの ための I 中範囲(1、LEN1 + 1 ) のために J中範囲(1 ,. 1 LEN2用+ ): IF WORD1 [I - 1] == WORD2 [J - 1 ]: TEMP = 0 他: TEMP = 1 DP [I] [J] [I - 1] =分(DP [J - 1] + TEMP、分(DP。[I - 1] [J] + 1、DP [I]、[J - 1] + 1 )) を返すDP [LEN1] [LEN2] #190 801 #計算編集距離類似 DEF simility(WORD1、WORD2): RES = edit_distance(WORD1、WORD2) MAXLEN = MAX(LEN(WORD1)、LEN(WORD2)) リターン 1-RES * 1.0 /。MAXLEN bianhaos = [] sub_sens = [] codecs.open有する(R ' C:\ユーザー\ Administrator.SC-201812211013 \ PycharmProjects \ untitled29 \ yiwoqu \コード\のxianbingshi_write_sub.txt '、' R '、' UTF8 ' )Fとして得ました: 以下のための行にF: #bianhao、sub_sen = line.split( '< - >') #。sub_sen = sub_sen.strip()ストリップ( '<B>')ストリップ( '<E>') #1 bianhaos.append (bianhao) sub_sensを。追加(ライン) 数 = LEN(sub_sens) leibie = [-1] *カウント CLA = 0 印刷(カウント) のための I における範囲(数): もし!leibie [I] = -1 : 継続 leibieを[I] = CLA SUB1 = sub_sens [i]は のために J における範囲(カウント): もし leibie [J ] = -1! : 続ける SUB2 = sub_sens [J] SIM = simility(SUB1、SUB2) であれば SIM> = 0.5 : leibie [J] = CLAの CLA= CLA + 1枚の プリント(I) プリント(leibie) (オープンと' leibie05.json '、' W ' Fとして): json.dump(leibie、F)