Python生成指定大小的文件

这篇具有很好参考价值的文章主要介绍了Python生成指定大小的文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

转载请注明出处❤️

作者:测试蔡坨坨

原文链接:caituotuo.top/400bd75c.html


你好,我是测试蔡坨坨。

在日常测试工作中,我们经常需要对上传的文件大小进行测试,例如:一个文件上传功能,限制文件大小最大为10MB,此时我们可能需要测试10MB以及其边界值9MB和11MB;再或者我们有时需要测试一个超大文件,进行大文件的测试。

针对以上情况,可能一时难以找到符合准确数据的测试文件,这时就可以使用Python来帮助我们生成任意大小的文件,这里提供两种解决方案。

方法1:

使用特定大小的文本重复生成,指定一个文本字符串text,然后将其重复复制直至达到所需的文件大小。

# author: 测试蔡坨坨
# datetime: 2023/6/8 1:31
# function: 使用特定大小的文本生成指定大小的文件


def generate_file(file_path, file_size_bytes):
    text = "This is some sample text by caituotuo."  # 要重复的文本
    text_size_bytes = len(text.encode('utf-8'))  # 每个重复的文本的大小(以字节为单位)

    repetitions = file_size_bytes // text_size_bytes  # 需要重复的次数
    remainder = file_size_bytes % text_size_bytes  # 剩余的字节数

    with open(file_path, 'w') as file:
        for _ in range(repetitions):
            file.write(text)

        if remainder > 0:
            file.write(text[:remainder])


if __name__ == '__main__':
    # 生成一个大小为10MB的PDF文件
    generate_file('caituotuo.pdf', 1024 * 1024 * 10)

方法2:

使用特定大小的随机数生成,使用随机数生成器生成特定大小的字节,并将其写入文件中。文章来源地址https://www.toymoban.com/news/detail-479296.html

# author: 测试蔡坨坨
# datetime: 2023/6/8 2:31
# function: 使用特定大小的随机数生成文件

import os


def generate_file(file_path, file_size_bytes):
    with open(file_path, 'wb') as file:
        file.write(os.urandom(file_size_bytes))


if __name__ == '__main__':
    # 生成一个大小为1MB的随机数据文件
    generate_file('caituotuo.docx', 1024 * 1024)

到了这里,关于Python生成指定大小的文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • shell 脚本统计 http 文件服务器下指定目录及其子目录下所有文件的大小

    shell脚本如下: 首先 vi calculate_size.sh 写入下入内容 执行 sh calculate_size.sh http://example.com/some/dir/ 即可统计 http 文件服务器http://example.com/some/dir/ 中 dir 目录及其子目录下所有文件的大小。

    2024年02月15日
    浏览(55)
  • uniApp h5项目通过命令行打包,并生成指定路径、文件名称

    第一步:采用hbuilder新建一个项目 第二部:通过cli新建一个项目 创建命令: 创建成功之后先运行一下项目,如果启动失败 Error: Cannot find module ‘webpack/lib/RuleSet‘ 我们将hb的项目作为基础 回到主题,将hb项目作为基础, 第一步:新建src文件夹,将以下文件放入src文件夹中  第

    2024年02月07日
    浏览(40)
  • UE虚幻引擎教程_生成云平台指定路径下的exe文件

    市面上大量优秀的游戏都是基于UE制作的,UE虚幻引擎制作的作品可以在windows、mac、linux以及ps4、x-boxone、ios、android甚至是html5等平台上运行。本文介绍了UE虚幻引擎如何生成云平台指定路径下的EXE。 一、云平台会运行打包文件夹下指定路径的EXE文件 但有时候UE蓝图项目比较简

    2024年02月16日
    浏览(36)
  • python 生成随机字符串(大小写英文字母、数字组成)、生成随机的无重复字符的字符串

    生成随机的 字符串 以下例子中,生成随机的字符串(大小写英文字母、数字组成)。 生成随机的无重复字符的字符串 以下例子中,生成随机的无重复字符的字符串(大小写英文字母、数字组成),但其长度不能超过样本总长。   random 模块 random.choice(seq) 从非空序列 seq 中随

    2024年02月04日
    浏览(67)
  • python压缩pdf文件大小

    pdf文件过大,经常会是一个问题,但是市面上基本上都是收费的工具,wps需要开会员才能使用。因此找了一个python库进行试验: 首先需要安装 运行的代码: 这个代码使用非常简单,主要是压缩文件里面的图片质量,实际上图片质量差一些在阅读器里面是看不出来的区别,效

    2024年02月13日
    浏览(41)
  • Python生成随机整数(1个、n个、指定步长、不重复)

    1. random.sample 生成 n个 [a,b)范围内的【 不重复 】随机【整数】 2. random.randint 生成 1个 [a,b]范围内的随机【整数】 3. random.randrange 返回 1个 [a,b)范围内、指定步长的随机数 4.使用种子生成随机数(一次性)

    2024年02月11日
    浏览(53)
  • 7.5:Python如何获取文件的大小?

    Python是一种功能强大的编程语言,其丰富的库和模块使得它成为数据处理、Web开发、自动化脚本等领域的首选语言。在Python的学习过程中,文件处理和磁盘空间管理是非常重要的主题。在本文中,我们将探讨如何使用Python获取文件大小和磁盘空间信息,并提供实际的代码示例

    2024年02月13日
    浏览(39)
  • VS010问题汇总(未能正确加载包)( 运行时提示无法启动程序 系统找不到指定的文件问题)(不能自动生成)(vs2010缺少或未指定语言特性)(没有为此解决方案配置选中要生成的项目)

    解决方法:http://t.csdn.cn/BKFoY(参考解决方法)  我的这个问题是参考这个回答中的第二个方法解决的,真的很靠谱,博主昨天被这个问题,重装了VS2010很多次,结果无法解决,是看了文中的方法才得以解决的 解决方法:我的解决方法:是没有生成解决方案,所以需要自己先

    2024年02月04日
    浏览(53)
  • python编程实战(二):一文教你生成随机验证码!大小写字母与数字组合,位数可以控制

    验证码验证,是常见的安全验证的一种方式,可以用来杜绝脚本和机器人操作等等; 除了本文介绍的简单的验证码之外,还有拼图验证、文字顺序验证等常见的验证方式 毕竟一位就是 26 + 26 +10 = 62种 4位验证码那就有 62 * 62 * 62 * 62 = 14776336 种组合! 6位就更不用说了~ 生活中我

    2023年04月11日
    浏览(81)
  • 在Python中获取文件的大小4种办法

    这篇文章将讨论如何在 Python 中获取文件的大小。 获取文件状态的标准解决方案是使用 os.stat() Python 函数。它返回一个 stat_result 对象,它有一个 st_size 包含文件大小(以字节为单位)的属性。 或者,使用 Python 3.4,您可以使用 Path.stat() 函数来自 pathlib 模块。它类似于 os.sta

    2024年02月13日
    浏览(68)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包