基于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文件读写并使用mysql批量插入示例分享(python操作mysql)
Feb 17 Python
pycharm 使用心得(八)如何调用另一文件中的函数
Jun 06 Python
Flask框架学习笔记(一)安装篇(windows安装与centos安装)
Jun 25 Python
Win7 64位下python3.6.5安装配置图文教程
Oct 27 Python
Python构建图像分类识别器的方法
Jan 12 Python
Python魔法方法功能与用法简介
Apr 04 Python
python tools实现视频的每一帧提取并保存
Mar 20 Python
pandas中的series数据类型详解
Jul 06 Python
python fuzzywuzzy模块模糊字符串匹配详细用法
Aug 29 Python
基于virtualenv创建python虚拟环境过程图解
Mar 30 Python
使用python处理题库表格并转化为word形式的实现
Apr 14 Python
Django migrate报错的解决方案
May 20 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
PHP5 面向对象程序设计
2008/02/13 PHP
建站常用13种PHP开源CMS比较
2009/08/23 PHP
php中is_null,empty,isset,unset 的区别详细介绍
2013/04/28 PHP
php验证身份证号码正确性的函数
2016/07/20 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
JQuery-tableDnD 拖拽的基本使用介绍
2013/07/04 Javascript
简单实用的反馈表单无刷新提交带验证
2013/11/15 Javascript
JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)
2014/10/16 Javascript
深入浅析Node.js 事件循环
2015/12/20 Javascript
基于jquery实现的仿优酷图片轮播特效代码
2016/01/13 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
js获取时间精确到秒(年月日)
2016/03/16 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
2017/01/04 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
使用python编写android截屏脚本双击运行即可
2014/07/21 Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
2017/06/21 Python
JPype实现在python中调用JAVA的实例
2017/07/19 Python
R vs. Python 数据分析中谁与争锋?
2017/10/18 Python
Python探索之SocketServer详解
2017/10/28 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
Python面向对象封装操作案例详解
2019/12/31 Python
Python中用pyinstaller打包时的图标问题及解决方法
2020/02/17 Python
python实现测试工具(一)——命令行发送get请求
2020/10/19 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
浅谈Html5移动端ios/Android兼容性总结
2018/06/01 HTML / CSS
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
个人求职信范文分享
2013/12/13 职场文书
优秀广告词大全
2014/03/19 职场文书
应聘教师自荐书
2014/06/16 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle
漫画「处刑少女的生存之道」第3卷封面公开
2022/03/21 日漫