基于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中查看变量内存地址的方法
May 05 Python
python中的字典使用分享
Jul 31 Python
Python数据结构之哈夫曼树定义与使用方法示例
Apr 22 Python
Python使用matplotlib实现基础绘图功能示例
Jul 03 Python
Python 实现某个功能每隔一段时间被执行一次的功能方法
Oct 14 Python
python 实现返回一个列表中出现次数最多的元素方法
Jun 11 Python
python爬虫 2019中国好声音评论爬取过程解析
Aug 26 Python
Django框架HttpRequest对象用法实例分析
Nov 01 Python
OpenCV+Python--RGB转HSI的实现
Nov 27 Python
通过实例解析python创建进程常用方法
Jun 19 Python
简单的命令查看安装的python版本号
Aug 28 Python
pandas将list数据拆分成行或列的实现
Dec 13 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操作excel文件 基于phpexcel
2010/07/02 PHP
php 删除一个数组中的某个值.兼容多维数组!
2012/02/18 PHP
php中fgetcsv()函数用法实例
2014/11/28 PHP
在Laravel的Model层做数据缓存的实现
2019/09/26 PHP
JavaScript几种形式的树结构菜单
2010/05/10 Javascript
妙用Jquery的val()方法
2012/06/27 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
JavaScript异步回调的Promise模式封装实例
2014/06/07 Javascript
Javascript常用字符串判断函数代码分享
2014/12/08 Javascript
node.js中的fs.unlinkSync方法使用说明
2014/12/15 Javascript
微信小程序 底部导航栏目开发资料
2016/12/05 Javascript
原生node.js案例--前后台交互
2017/02/20 Javascript
Javascript中的getter和setter初识
2017/08/17 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
微信小程序实现上传word、txt、Excel、PPT等文件功能
2019/05/23 Javascript
原生js实现的移动端可拖动进度条插件功能详解
2019/08/15 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
python翻译软件实现代码(使用google api完成)
2013/11/26 Python
Python写的Discuz7.2版faq.php注入漏洞工具
2014/08/06 Python
在Python中操作字典之update()方法的使用
2015/05/22 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
Python缩进和冒号详解
2016/06/01 Python
基于python的字节编译详解
2017/09/20 Python
python实现二叉树的遍历
2017/12/11 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
Matplotlib使用字符串代替变量绘制散点图的方法
2020/02/17 Python
Python装饰器用法与知识点小结
2020/03/09 Python
Python configparser模块操作代码实例
2020/06/08 Python
解决HTML5手机端页面缩放的问题
2017/10/27 HTML / CSS
营销部内勤岗位职责
2014/04/30 职场文书
出国留学单位推荐信
2015/03/26 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
小学语文教师研修感悟
2015/11/18 职场文书
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js