我有一个随机文件 - words.txt,其中包含以下单词。使用下面的单词我需要在linux中的python中生成1 kb,10 kb,100 kb和1 mb的文件。由于我是Python的新手,有人可以帮忙吗?
aardvark
aardwolf
aaron
aback
abacus
abaft
abalone
abandon
abandoned
abandonment
abandons
abase
abased
abasement
abash
借助网络上的一些脚本,我编写了一个小代码,如下所示:
#! /usr/bin/env python
def generate_file():
fname='/tmp/1.txt'
word_cnt=int(random.random()*10)
rnd_str = ' '
newline_str=''
for wrd in range(1,word_cnt):
idx = random.randint(1,len(wordlist)-1)
#print idx
if ( len( newline_str) > 40 ) :
newline_str=''
rnd_str = rnd_str + '\n'
newline_str = newline_str + ' ' + wordlist[idx]
rnd_str = rnd_str + ' ' + wordlist[idx]
text_file = open(fname, "w")
text_file.write(rnd_str)
text_file.close()
wordfile = "wordsrange.txt"
wlf = open(wordfile,"r")
wordlist=wlf.read().splitlines()
wlf.close()
generate_file()
但我不确定如何生成1 kb,10 kb,100 kb和1 mb文件,需要一些帮助。