生成1000万行7位数字文件(编程珠玑)

生成1000万行7位数字文件(编程珠玑)

今天看《编程珠玑》排序的问题,输入是一个千行文件,每行是7位数字,并且无重复。搜索了下,没有现成的数据集,所以简单用python生成了下,虽然简单!
思路:顺序生成,然后shuffle。

#!/usr/bin/python

f = open("numbers.txt", "w");
for i in range(0, 9999999):
    s = str(i)
    s = s.zfill(7)
    s = s + '\n'
    f.write(s)
f.close()

RUN:得到的数据集大小是77M

python generate-numbers.py 
ls -l --block-size=M numbers.txt 
shuf -o outoforder.txt numbers.txt 
head -n 10 outoforder.txt 
  • python整型和字符串的转换:int(), str()
  • 利用str.zfill(width)进行字符串的填补
  • 显示文件大小 ls -l –block-size=M
  • 使用shuf命令将文件行随机排列 ,从而得到对应的数据集。

你可能感兴趣的:(Algorithm)