Python 生成大量文件及大文件

Python 生成大量文件及大文件
很多时候测试需要大量的文件和很大的文件,这些手动操作是非常麻烦的,现在来看看使用python自动生成

一次生成大量小文件(速度很慢)

import os
import time
import random


def nsfile(s, size):
    # b = os.path.exists("C:\测试大量文件与大文件\大量文件\\")
    # if b:
    #     print("File Exist!")
    #
    # else:
    #     os.mkdir("C:\测试大量文件与大文件\大量文件\\")

    # 生成文件
    for i in range(1, s + 1):
        localTime = time.strftime("%Y%m%d%H%M%S", time.localtime())
        # print localtime
        # filename = "C:\测试大量文件与大文件\大量文件\\" + localTime + ".txt"
        filename = "C:\测试大量文件与大文件\大量文件\\" + str(i+400) + ".txt"
        # a:以追加模式打开(必要时可以创建)append;b:表示二进制
        ds = 0
        f = open(filename, 'w')
        #   f.seek(size - 1)
        while ds < size:
            f.write('测试文件'+str(round(random.uniform(-1000, 1000), 2)))
            f.write("\n")
          #  time.sleep(1)
            ds = os.path.getsize(filename)


if __name__ == '__main__':
    nsfile(400, 1* 1024)

生成一个大文件(速度很快)

import time
def creatfilesize(n):
    local_time = time.strftime("%Y%m%d%H%M%S",time.localtime())
    #file_name = "C:\测试大量文件与大文件\大文件\\"+str(local_time)+".txt"
    file_name = "C:\测试大量文件与大文件\大文件\\" + str(local_time) + ".txt"
    bigFile= open(file_name, 'w',encoding='utf-8')
    bigFile.seek(1024*1024*1024*n)
    bigFile.write('test')
    bigFile.write("test")
    bigFile.close()


if __name__ == '__main__':
    n = int(input("输入你要生成的文件大小(单位为G):"))
    creatfilesize(n)

你可能感兴趣的:(Python 生成大量文件及大文件)