基于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笔记(1) 关于我们应不应该继续学习python
Oct 24 Python
Python中的生成器和yield详细介绍
Jan 09 Python
python轻松实现代码编码格式转换
Mar 26 Python
简要讲解Python编程中线程的创建与锁的使用
Feb 28 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
May 24 Python
python中模块查找的原理与方法详解
Aug 11 Python
Python简单生成随机姓名的方法示例
Dec 27 Python
使用OpCode绕过Python沙箱的方法详解
Sep 03 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
Dec 27 Python
通过代码实例解析Pytest运行流程
Aug 20 Python
利用python实现后端写网页(flask框架)
Feb 28 Python
用PYTHON去计算88键钢琴的琴键频率和音高
Apr 10 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模块化安装教程
2016/06/01 PHP
PHP运行模式汇总
2016/11/06 PHP
PHP读取、解析eml文件及生成网页的方法示例
2017/09/04 PHP
TNC vs IO BO3 第二场2.13
2021/03/10 DOTA
在一个浏览器里呈现所有浏览器测试结果的前端测试工具的思路
2010/03/02 Javascript
javascript仿qq界面的折叠菜单实现代码
2012/12/12 Javascript
Javascript学习笔记之 对象篇(一) : 对象的使用和属性
2014/06/24 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
2015/08/31 Javascript
js实现文本框输入文字个数限制代码
2015/12/25 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
2015/12/30 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
jQuery ajax动态生成table功能示例
2017/06/14 jQuery
axios全局请求参数设置,请求及返回拦截器的方法
2018/03/05 Javascript
vue router 配置路由的方法
2018/07/26 Javascript
[50:02]完美世界DOTA2联赛循环赛 Magma vs IO BO2第一场 11.01
2020/11/02 DOTA
在Python中编写数据库模块的教程
2015/04/29 Python
深入解析Python编程中JSON模块的使用
2015/10/15 Python
Python使用内置json模块解析json格式数据的方法
2017/07/20 Python
对python_discover方法遍历所有执行的用例详解
2019/02/13 Python
Python里字典的基本用法(包括嵌套字典)
2019/02/27 Python
PYQT5设置textEdit自动滚屏的方法
2019/06/14 Python
PyQt5 多窗口连接实例
2019/06/19 Python
Python 实现将数组/矩阵转换成Image类
2020/01/09 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
canvas之自定义头像功能实现代码示例
2017/09/29 HTML / CSS
小米旗下精品生活电商平台:小米有品
2018/12/18 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
事业单位接收函
2014/01/10 职场文书
2015年毕业生自我鉴定模板
2014/09/19 职场文书
车辆转让协议书
2014/09/24 职场文书
公司处罚决定书
2015/06/24 职场文书
军训决心书范文
2015/09/22 职场文书
九年级化学教学反思
2016/02/22 职场文书
二手手机买卖合同范本(2019年版)
2019/10/28 职场文书
如何Tomcat中使用ipv6地址
2022/05/06 Servers