前言

在测试过程中经常遇到文件上传的功能,文件的大小边界值测试一直没有好的解决办法,这里我分享一个创建文件的脚本希望对大家有帮助。

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>

if __name__ == '__main__':

generateTXTFile()

创建1M文件

创建100M文件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

python如何创建txt文档_基于python实现生成指定大小txt文档相关推荐

  1. 用python写脚本筛选原创微博_基于python编写的微博应用

    本文实例讲述了基于python编写的微博应用,分享给大家供大家参考.具体如下: 在编写自己的微博应用之前,先要到weibo开放平台申请应用的公钥和私钥. 下载python版的SDK,打开example ...

  2. python怎样使用各个日期赤纬_基于Python的天文软件命令行界面设计与实现

    计算机软件技术的不断发展,推动了人机交互技术的长足进步.从传统的命令行(Command Line Interface,CLI),到图形用户界面(Graphical User Interface,GUI ...

  3. python检测微信好友是否删除_基于Python+adb实现微信是否好友检测

    本文介绍的基于Python+adb实现的微信好友检测,是通过adb操控手机,模拟人的点击.截屏操作,对应用无侵入,无需扫描登录即可实现好友检测. 网上看到一些文章类似功能的实现,总结起来千篇一律的引入 ...

  4. python中numpy数组的合并_基于Python中numpy数组的合并实例讲解

    基于Python中numpy数组的合并实例讲解 Python中numpy数组的合并有很多方法,如 - np.append() - np.concatenate() - np.stack() - np. ...

  5. 基于python的气象数据分析统计服_基于Python的风向风速数据分析的设计与实现

    基于 Python 的风向风速数据分析的设计与实现 李文倩 ; 刘婕 [期刊名称] < <信息通信> > [年 ( 卷 ), 期] 2019(000)009 [摘要] Pyth ...

  6. python版植物大战僵尸源码_基于python的植物大战僵尸游戏设计与实现.docx

    湖南理工学院毕业设计(论文) PAGE PAGE 1 学 号 毕业设计(论文) 题目:基于python的植物大战僵尸游戏设计与实现 作 者 届 别 届 院 别 信息与通信工程学院 专 业 信息工程 指 ...

  7. 基于python的股票程序化交易论文_基于Python工具的股票量化投资策略研究

    2019 年第 07 期 20 世 纪 80 年代, 一 些 投 资 者 开 始 利用 计 算 机 研究金 融 数据 , 并 初显 成 效 . 20 世 纪 末 , 投 资 者 把 计 算 机 技术 ...

  8. 基于python的爬虫系统金融数据_基于Python的互联网金融数据采集

    基于Python的互联网金融数据采集 □文/王 蕾1安英博1刘佳杰2 [提要] 互联网金融数据中潜藏着未知的知识价值,但也存在着巨量的数据冗余.通过Python可以进行互联网金融数据的获取.解析.提取 ...

  9. python爬取微博用户正文_基于Python的新浪微博用户信息爬取与分析

    基于 Python 的新浪微博用户信息爬取与分析 邓文萍 [摘 要] 摘要:本文设计并实现了一个微博用户信息爬取与分析系统 , 利用 Cookie 实现了用户的模拟登录 , 使用 Python 语言的 ...

最新文章

  1. 授权服务框架Spring Authorization Server的过滤器链
  2. iodine免费上网——本质就是利用dns tunnel建立tcp,然后tcp proxy来实现通过访问虚拟dns0网卡来访问你的dns 授权server...
  3. mysql主从复制思考_Mysql主从复制(拓展博客文章分享及思考)
  4. 帧中继(Frame Relay)实验
  5. AspectCore.Extension.Reflection : .NET Core反射扩展库
  6. 前端学习(2931):vue里面的虚拟dom和算法
  7. Pv6报头结构以及与IPv4的比较
  8. 浅谈linux系统下常见的故障与处理方法
  9. DataTable转换成List
  10. python移动文件到指定文件夹
  11. elasticsearch 如何清理过期的数据
  12. 软件项目管理测试题----含答案
  13. 技术管理 - 思维导图(补)
  14. Vue + Element-UI —— 项目实战(一)
  15. 使用python读取官方节假日文件,获取放假日期
  16. mongodb——mongo笔记*
  17. 高维空间中的体积(包含递归思想的初步理解)
  18. 【论文笔记】An End-to-End Model for QA over KBs with Cross-Attention Combining Global Knowledge
  19. centos7 修改连接数_centos7+rsyslog+loganalyzer+mysql 搭建rsyslog日志服务器 - 夜空守望者2020...
  20. 保监会:保险机构应坚持长期投资

热门文章

  1. Egret 2020,技术沉淀与产品突破
  2. 关于Office 2010激活及一些相关知识
  3. [转]不可思议的Qt GrahpicView演示-重返德军总部(有视频哦)
  4. 近几年主要智慧城市、大数据、数字营销类型项目的参与经历
  5. linux 输出日志 1 与2,linux日志机制syslogd总结
  6. 钱诚12.31黄金原油最新行情资讯分析,纸白银投资操作指南
  7. sql注入的攻击与利用
  8. 关于 麒麟系统开发错误“fatal error: GL/gl.h: No such file or directory“ 的解决方法
  9. 开发版速达光耀-金万维宽带通公网域名申请和部署
  10. [读书笔记—效率]《超级整理术》- [日]泉正人