基于python实现生成指定大小txt文档

 更新时间:2020年07月20日 08:35:20   作者:wen-cheng  
这篇文章主要介绍了基于python实现生成指定大小txt文档,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

前言

在测试过程中经常遇到文件上传的功能,文件的大小边界值测试一直没有好的解决办法,这里我分享一个创建文件的脚本希望对大家有帮助。

demo

"""
 * Create by dell on 2020/7/10
 * Author :wencheng
 * 微信公众 :自动化测试 To share
"""
# !/user/bin/env python
# -*- coding:utf-8 -*-

import os
import time


# 获取username, 如chinaren
def getusername():
  namelist = os.popen('echo %username%').readlines()
  username = namelist[0].replace("\n", "")
  # 获取当前的username
  return username


# 获取时间和日期
def getnowdatatime(flag=0):
  '''
  flag = 0为时间和日期     eg:2018-04-11 10:04:55
  flag = 1仅获取日期      eg:2018-04-11
  flag = 2仅获取时间      eg:10:04:55
  flag = 3纯数字的日期和时间  eg:20180411100455
  '''
  now = time.localtime(time.time())
  if flag == 0:
    return time.strftime('%Y-%m-%d %H:%M:%S', now)
  if flag == 1:
    return time.strftime('%Y-%m-%d', now)
  if flag == 2:
    return time.strftime('%H:%M:%S', now)
  if flag == 3:
    return time.strftime('%Y%m%d%H%M%S', now)


# 生成指定大小的TXT档
def generateTXTFile():
  fileSize = 0
  # 判断输入是否有误
  while True:
    size = input('请输入你想生成的TXT文件大小(MB):')
    if size.strip().isdigit() != True:
      print('只能输入整数,请重新输入!')
      continue
    else:
      fileSize = int(size)
      break
  if fileSize >= 200:
    print('正在生成TXT文件,请稍候... ...')
  # 生成指定大小的TXT档
  filename = getnowdatatime(3) + '_' + size + 'MB.txt'
  print(f'文件名:{filename}')
  # 设置文件保存的路径
  filepath = 'C:\\Users\\' + getusername() + '\\Desktop\\'
  f = open(filepath + filename, 'w')
  # 获取开始时间
  starttime = getnowdatatime()
  startclock = time.clock()
  for i in range(fileSize):
    if i >= 100:
      if i % 100 == 0:
        print(f'已生成{i//100 * 100}MB数据.')
    for j in range(1024):
      try:
        f.write('01' * 512)
      except KeyboardInterrupt:
        print('\n异常中断:KeyboardInterrupt')
        f.close()
        exit(-1)
  f.close()
  print(f'文件已成生并保存在桌面, 文件大小:{fileSize}MB.\n')
  print(f'DetailInfo:')
  print(f'保存路径: {filepath + filename}')
  print(f'开始时间:{starttime}')
  print(f'结束时间:{getnowdatatime()}')
  print(f'总共耗时:{(time.clock() - startclock):<.3}sec.')


if __name__ == '__main__':
  generateTXTFile()

创建1M文件

创建100M文件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 利用Matplotlib实现单画布绘制多个子图

    利用Matplotlib实现单画布绘制多个子图

    这篇文章主要介绍了利用Matplotlib实现单画布绘制多个子图,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • python库geopandas读取写入空间数据及绘图实例探索

    python库geopandas读取写入空间数据及绘图实例探索

    这篇文章主要为大家介绍了python库geopandas读取写入空间数据及绘图实例探索,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪<BR>
    2024-02-02
  • Python Joblib库使用方法案例总结

    Python Joblib库使用方法案例总结

    Python Joblib库是一个用于并行计算和数据预处理的工具库。它可以帮助用户快速处理大量数据,提高计算效率。其中,最常用的功能是并行计算,可以使用多个CPU核心同时处理任务,大大缩短计算时间。此外,Joblib还提供了一些数据预处理的功能,可以帮助用户更好地处理数据
    2023-06-06
  • Python中多个数组行合并及列合并的方法总结

    Python中多个数组行合并及列合并的方法总结

    下面小编就为大家分享一篇Python中多个数组行合并及列合并的方法总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 简要讲解Python编程中线程的创建与锁的使用

    简要讲解Python编程中线程的创建与锁的使用

    这篇文章主要介绍了简要讲解Python编程中线程的创建与锁的使用,Python中虽然有GIL的存在,但依然是能够创建多个线程来交替使用的,需要的朋友可以参考下
    2016-02-02
  • 一篇文章带你搞定Python多进程

    一篇文章带你搞定Python多进程

    Python中的多进程是通过multiprocessing包来实现的,和多线程的threading.Thread差不多,它可以利用multiprocessing.Process对象来创建一个进程对象。本文将带你深入了解Python多线程,需要的可以参考一下
    2022-01-01
  • Python NumPy灰度图像的压缩原理讲解

    Python NumPy灰度图像的压缩原理讲解

    在本篇文章里小编给大家整理的是一篇关于Python NumPy灰度图像的压缩原理讲解内容,有兴趣的朋友们可以学习参考下。
    2021-08-08
  • Python使用sorted对字典的key或value排序

    Python使用sorted对字典的key或value排序

    这篇文章主要介绍了Python使用sorted对字典的key或value排序,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • python使用pyaudio录音和格式转化方式

    python使用pyaudio录音和格式转化方式

    这篇文章主要介绍了python使用pyaudio录音和格式转化方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • python爬虫基础之简易网页搜集器

    python爬虫基础之简易网页搜集器

    这篇文章主要介绍了python爬虫基础之简易网页搜集器,文中有非常详细的代码示例,对正在学习python爬虫的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04

最新评论