指定バイト数でファイルを作る(Python)
Sep 2, 2017 · otherspython
ファイルIO系のテストをする時に、指定したバイト数ちょうどで、かつ、ランダムな内容のファイルをPython
で作成する方法
指定サイズのファイルを作る方法は、macだとmkfile
が有名だが、この方法では1byte
単位までは指定できない
簡単なテストならともかく、ちゃんと境界値チェックを行いたい場合には、任意のバイト数ぴったりのファイルが必要となるので、それを作成するスクリプト
ソース
まずはnumpy
を使って、コマンドラインの引数で指定されたバイト数分のランダムなバイナリを作成する
numpy.random.bytes(int(sys.argv[1]))
あとは、単純にそのバイナリをファイルへ書き出しているだけ。
ちなみにwith
は例外の処理やらclose
を勝手にしてくれる便利なもの
使い方
python r.py 1000
といった感じにすれば、1000byteのファイルが1000.bin
という名前で生成される
python
はライブラリが充実しているので、こういうスクリプトをサクッと作るのに便利