基于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 socket.error: [Errno 98] Address already in use的原因和解决方法
Aug 25 Python
总结Python编程中三条常用的技巧
May 11 Python
用python做一个搜索引擎(Pylucene)的实例代码
Jul 05 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
Python实现将照片变成卡通图片的方法【基于opencv】
Jan 17 Python
PyQt5每天必学之切换按钮
Aug 20 Python
Python PyQt4实现QQ抽屉效果
Apr 20 Python
python中使用 xlwt 操作excel的常见方法与问题
Jan 13 Python
python如何解析配置文件并应用到项目中
Jun 27 Python
PyQt5如何将.ui文件转换为.py文件的实例代码
May 26 Python
Python selenium使用autoIT上传附件过程详解
May 26 Python
Python实现壁纸下载与轮换
Oct 19 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 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
2012/04/09 PHP
php生成随机颜色的方法
2014/11/13 PHP
smarty内置函数capture用法分析
2015/01/22 PHP
php结合ACCESS的跨库查询功能
2015/06/12 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
用jscript实现新建和保存一个word文档
2007/06/15 Javascript
NodeJS与Mysql的交互示例代码
2013/08/18 NodeJs
禁止ajax缓存获取程序最新数据的方法
2013/11/19 Javascript
鼠标滚轴控制文本框值的JS代码
2013/11/19 Javascript
jQuery中ajax的post()方法用法实例
2014/12/26 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
jquery+css3实现会动的小圆圈效果
2016/01/27 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
vue watch监听对象及对应值的变化详解
2018/02/24 Javascript
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
对 Vue-Router 进行单元测试的方法
2018/11/05 Javascript
js指定日期增加指定月份的实现方法
2018/12/19 Javascript
vue项目中仿element-ui弹框效果的实例代码
2019/04/22 Javascript
JavaScript实现简单计算器功能
2019/12/19 Javascript
ES2020系列之空值合并运算符 '??'
2020/07/22 Javascript
Python基于内置库pytesseract实现图片验证码识别功能
2020/02/24 Python
python else语句在循环中的运用详解
2020/07/06 Python
基于css3仿造window7的开始菜单
2010/06/17 HTML / CSS
详解HTML5中div和section以及article的区别
2015/07/14 HTML / CSS
英国复古和经典球衣网站:Vintage Football Shirts
2018/10/05 全球购物
猫咪家具:CatsPlay
2018/11/03 全球购物
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
求职信内容考虑哪几点
2013/10/05 职场文书
本科生求职简历的自我评价
2013/10/21 职场文书
2014乡镇“三八”国际劳动妇女节活动总结
2014/03/01 职场文书
学习全国两会精神心得体会范文
2014/03/17 职场文书
课内比教学心得体会
2014/09/09 职场文书
2014年出纳工作总结与计划
2014/12/09 职场文书
放假通知格式
2015/04/14 职场文书
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android
Python实现为PDF去除水印的示例代码
2022/04/03 Python