基于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程序员鲜为人知但你应该知道的17个问题
Jun 04 Python
Python中的魔法方法深入理解
Jul 09 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
Python中使用支持向量机(SVM)算法
Dec 26 Python
python如何在循环引用中管理内存
Mar 20 Python
Python中GIL的使用详解
Oct 03 Python
在双python下设置python3为默认的方法
Oct 31 Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 Python
Python一行代码解决矩阵旋转的问题
Nov 30 Python
JupyterNotebook设置Python环境的方法步骤
Dec 03 Python
聊聊python中的异常嵌套
Sep 01 Python
pytorch简介
Nov 11 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伪造referer的方法 利用referer防止图片盗链
2014/01/20 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
yii去掉必填项中星号的方法
2015/12/28 PHP
php while循环控制的简单实例
2016/05/30 PHP
js 输出内容到新窗口具体实现代码
2013/05/31 Javascript
js之onload事件的一点使用心得
2013/08/14 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
JS对字符串编码的几种方式使用指南
2015/05/14 Javascript
浅谈jQuery中height与width
2015/07/06 Javascript
JavaScript实现数据类型的相互转换
2016/03/06 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
js实现数组内数据的上移和下移的实例
2017/11/14 Javascript
使用vue + less 实现简单换肤功能的示例
2018/02/21 Javascript
vue.js实现的经典计算器/科学计算器功能示例
2018/07/11 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
Vue 实现从小到大的横向滑动效果详解
2019/10/16 Javascript
Vue中使用Lodop插件实现打印功能的简单方法
2019/12/19 Javascript
vuex刷新后数据丢失的解决方法
2020/10/18 Javascript
Vue Elenent实现表格相同数据列合并
2020/11/30 Vue.js
微信小程序反编译的实现
2020/12/10 Javascript
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
Java里面StringBuilder和StringBuffer有什么区别
2016/06/06 面试题
某公司面试题
2012/03/05 面试题
财务会计专业毕业生自荐信
2013/10/02 职场文书
银行学习十八大感想
2014/01/11 职场文书
售后求职信范文
2014/03/15 职场文书
升学宴学生答谢词
2015/01/05 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书
校运会加油稿大全
2015/07/22 职场文书
孩子满月酒答谢词
2015/09/30 职场文书
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python
Java实现添加条码或二维码到Word文档
2022/06/01 Java/Android