我想要一个大的词汇单词列表(每个单词+定义是一行),随机化列表,然后在142个项目块中写入一个文件而不重复任何单词。
我觉得我已经大致接近了,但写回来给我带来了麻烦。这就是我所拥有的:
import random
zz = 0
with open('vocablist.text') as f:
lines = f.readlines()
lines = [line.rstrip('\n') for line in open('vocablist.txt')]
random.shuffle(lines)
vocab_out = open('vocab_out.txt.', 'w')
for x in lines:
zz = zz +1
if zz > 142:
vocab_out.write('END OF SECTION'+\n)
zz = 0
vocab_out.write(x)
vocab_out.close()
我必须为我接手的课程重新制作这些词汇表,并且手工完成它会花费我几天的时间。
答案 0 :(得分:1)
这样的事情应该这样做:
import random
with\
open('vocablist.text') as input,\
open('vocab_out.txt', 'w') as output:
lines = [line.rstrip('\n') for line in input.readlines()]
random.shuffle(lines)
zz = 0
for x in lines:
zz += 1
if zz > 142:
output.write('END OF SECTION' + '\n')
zz = 0
output.write(x + '\n')
变化:
for line in open
至for line in input.readlines()
with
这两个文件都可以一起打开和关闭。\n
中的+\n
需要引用为字符串+ '\n'
output.write
醇>