六级和考研词汇的差别(六级词汇和考研英语词汇)




2024-03-19 22:34:45
作者:gong2022
0
考研词汇和六级词汇的差异结论在文末,赶时间的同学可直接划到文末。知乎无法上传文件,把单词贴在下面太长了,需要可以私信扣个1,我看到了就发你,也可以 你对比其他考试的词汇。
刚学了mapreduce,正好想知道cet6和考研词汇有多少不一样的,方便安排背诵计划,于是写了程序自己测试一下,结论是六级和考研有1027个不一样的单词。今晚太晚了,明天我把不一样的单词发上来。
代码附在下面,大家可随意取用。本次运行结果在文末,工程文件也附在附件里了,可以直接下载去跑。如果你需要对比其他考试的词汇,需要做的改动有:
单词文档的要求是txt文件,格式为每行一个单词(从excel复制一列过来那种)在main函数中修改exam1和exam2两个变量,分别为两个文件名,文件记得放在source文件夹下好了,下面贴代码,逻辑就是mapreduce,多了一些文件预处理和计数器而已
main.py:
#main.py
import main
import sys
from mapper import *
from reducer import *


if __name__ == :
exam1 =
exam2 =
countersame = 0
counterunsame = 0
countercet6 = 0
counterkaoyan = 0
try:
fin1 = open(+ exam1+, )
fin2 = open(+ exam2+, )
fout = open(, )
i = 0
for line in fin1:
line = line.strip()
word = line.split()[0]
fout.write(word)
countercet6 += 1
i += 1
if(i == 10):
i = 0
fout.write(\n)
else:
fout.write()

for line in fin2:
line = line.strip()
word = line.split()[0]
fout.write(word)
counterkaoyan += 1
i += 1
if(i == 10):
i = 0
fout.write(\n)
else:
fout.write()

finally:
fin1.close()
fin2.close()
fout.close()

# try:
# fin1 = open()
# fout = open()
# for line in fin1:
# line.strip()
# fout.write(line)
# fout.write()
# finally:
# fin1.close()
# fout.close()

map(, )
redu

ce(, )
f = open(, )
for line in f:
if(int(line.split()[1]) == 2):
countersame += 1
else:
counterunsame += 1
print(\n单词数统计:)
print(exam1+ 总量:\t,countercet6)
print(exam2+总量:\t,counterkaoyan)
print(重复的单词数:\t,countersame)
print(不同的单词数:\t,counterunsame)
print(不同的单词在两门考试中各自所占百分比:\n+ exam1 + :\t, round(counterunsame/countercet6, 4), %\n+ exam2 + :\t, round(counterunsame/counterkaoyan, 4), )
mapper.py:
#mapper.py
import sys
import main
def map(finname, foutname):
try:
fin = open(finname, )
fout = open(foutname, )
for line in fin:
line = line.strip()
words = line.split()
for word in words:
fout.write(word)
fout.write()
fout.write(\n)
finally:
fin.close()
fout.close()
reducer.py:
#reducer.py
from operator import itemgetter
import sys

def reduce(finname1, foutname):
word_count = {}
try:
fin1 = open(finname1, )
fout = open(foutname, )
for line in fin1:
line = line.strip()
word = line.split()[0]
count = line.split()[1]
count = int(count)
word_count[word] = word_count.get(word, 0) + count
sorted_word_count = sorted(word_count.items(), key=itemgetter(0))
for word, count in sorted_word_count:
fout.write(word)
fout.write()
fout.write(str(count))
fout.write(\n)
finally:
fin1.close()
fout.close(
结果截图: