基于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 yield 小结和实例
Apr 25 Python
Python装饰器使用示例及实际应用例子
Mar 06 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
Jan 20 Python
Python之str操作方法(详解)
Jun 19 Python
Python实现按特定格式对文件进行读写的方法示例
Nov 30 Python
Python语言实现将图片转化为html页面
Dec 06 Python
如何使用python把ppt转换成pdf
Jun 29 Python
详解基于python-django框架的支付宝支付案例
Sep 23 Python
pytorch之添加BN的实现
Jan 06 Python
Python连接Hadoop数据中遇到的各种坑(汇总)
Apr 14 Python
Selenium自动化测试工具使用方法汇总
Jun 12 Python
python神经网络 使用Keras构建RNN训练
May 04 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
ThinkPHP3.1新特性之字段合法性检测详解
2014/06/19 PHP
Yii实现多数据库主从读写分离的方法
2014/12/29 PHP
PHP遍历目录文件的常用方法小结
2017/02/03 PHP
PHP自动补全表单的两种方法
2017/03/06 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
IE DOM实现存在的部分问题及解决方法
2009/07/25 Javascript
jQuery '行 4954 错误: 不支持该属性或方法' 的问题解决方法
2011/01/19 Javascript
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
2012/01/04 Javascript
JS实现闪动的title消息提醒效果
2014/06/20 Javascript
兼容Firefox的Javascript XSLT 处理XML文件
2014/12/31 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
2016/06/21 Javascript
微信小程序实现移动端滑动分页效果(ajax)
2017/06/13 Javascript
Vue.js列表渲染绑定jQuery插件的正确姿势
2017/06/29 jQuery
vue基于mint-ui的城市选择3级联动的示例
2017/10/25 Javascript
Vue精简版风格指南(推荐)
2018/01/30 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
微信小游戏中three.js离屏画布的示例代码
2020/10/12 Javascript
python实现通过代理服务器访问远程url的方法
2015/04/29 Python
Python中的descriptor描述器简明使用指南
2016/06/02 Python
Python中强大的命令行库click入门教程
2016/12/26 Python
Python数据分析库pandas基本操作方法
2018/04/08 Python
详解Python3 基本数据类型
2019/04/19 Python
Python读取表格类型文件代码实例
2020/02/17 Python
使用Tkinter制作信息提示框
2020/02/18 Python
Django的ListView超详细用法(含分页paginate)
2020/05/21 Python
24个canvas基础知识小结
2014/12/17 HTML / CSS
工程地质勘察专业大学生求职信
2013/10/13 职场文书
轻金属冶金专业毕业生自荐信
2013/11/02 职场文书
管理科学大学生求职信
2013/11/13 职场文书
师范生的个人求职信范文
2014/01/04 职场文书
高中地理教学反思
2014/01/29 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
导游词之南京中山陵
2019/11/27 职场文书
导游词之开封禹王台风景区
2019/12/02 职场文书