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


Posted in Python onJuly 20, 2020

前言

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

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文件

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

创建100M文件

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

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

Python 相关文章推荐
python 字符串格式化代码
Mar 17 Python
老生常谈python的私有公有属性(必看篇)
Jun 09 Python
python基本语法练习实例
Sep 19 Python
Python实现读取txt文件并画三维图简单代码示例
Dec 09 Python
python3操作微信itchat实现发送图片
Feb 24 Python
Flask框架通过Flask_login实现用户登录功能示例
Jul 17 Python
Python基础教程之if判断,while循环,循环嵌套
Apr 25 Python
python中matplotlib实现随鼠标滑动自动标注代码
Apr 23 Python
python os模块常用的29种方法使用详解
Jun 02 Python
最简单的matplotlib安装教程(小白)
Jul 28 Python
python 实现一个图形界面的汇率计算器
Nov 09 Python
Python爬虫之爬取最新更新的小说网站
May 06 Python
python中upper是做什么用的
Jul 20 #Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
Jul 20 #Python
python集合能干吗
Jul 19 #Python
python如何建立全零数组
Jul 19 #Python
解决python中0x80072ee2错误的方法
Jul 19 #Python
python给视频添加背景音乐并改变音量的具体方法
Jul 19 #Python
python中加背景音乐如何操作
Jul 19 #Python
You might like
php不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
2011/07/29 PHP
深入PHP变量存储的详解
2013/06/13 PHP
迅速确定php多维数组的深度的方法
2014/01/07 PHP
php实现邮件发送并带有附件
2014/01/24 PHP
php自动识别文件编码并转换为UTF-8的方法
2014/06/12 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
PHP 断点续传实例详解
2017/11/11 PHP
Yii框架核心组件类实例详解
2019/08/06 PHP
js 数组操作代码集锦
2009/04/28 Javascript
JQuery 拾色器插件发布-jquery.icolor.js
2010/10/20 Javascript
使用js在页面中绘制表格核心代码
2013/09/16 Javascript
jquery.form.js用法之清空form的方法
2014/03/07 Javascript
JavaScript实现函数返回多个值的方法
2015/06/09 Javascript
jQuery mobile转换url地址及获取url中目录部分的方法
2015/12/04 Javascript
js仿3366小游戏选字游戏
2016/04/14 Javascript
浅谈js闭包理解
2019/04/01 Javascript
JavaScript复制变量三种方法实例详解
2020/01/09 Javascript
详细分析Node.js 模块系统
2020/06/28 Javascript
介绍Python中的文档测试模块
2015/04/28 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
python实现大转盘抽奖效果
2019/01/22 Python
浅谈python函数调用返回两个或多个变量的方法
2019/01/23 Python
Django多数据库的实现过程详解
2019/08/01 Python
Python 实现毫秒级淘宝抢购脚本的示例代码
2019/09/16 Python
深入浅析Python 中的sklearn模型选择
2019/10/12 Python
Jupyter notebook如何实现指定浏览器打开
2020/05/13 Python
如何写出好的Java代码
2014/04/25 面试题
单位消防安全制度
2014/01/12 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
经理岗位职责
2015/02/02 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js
浅谈Redis缓冲区机制
2022/06/05 Redis