py-》生成自定义文件大小

news/2024/11/20 11:40:10/文章来源:https://www.cnblogs.com/yanhuidj/p/18289835

'''
生成自定义文件大小

'''

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):
   
    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.jpeg'
    print(f'文件名:{filename}')
    # 设置文件保存的路径
    filepath = 'C:\\Users\\' + getusername() + '\\Desktop\\'
    f = open(filepath + filename, 'w')
    # 获取开始时间
    starttime = getnowdatatime()
    # startclock = time.clock()
    startclock = time.perf_counter()
    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.perf_counter() - startclock):<.3}sec.')


if __name__ == '__main__':
    generateTXTFile()
 
——————————
 
效果:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/740570.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【可视化还能免费做?!】用这款免费可视化工具做智慧港口建设,实现港口统一调度

在智慧港口的建设中,实现港口的统一调度是一项关键任务。山海鲸可视化,这款免费可视化工具,通过其卓越的功能和特色,为智慧港口的建设提供了强大的支持。从智慧港口的需求出发,结合船舶调度和货物转运的需求,山海鲸可视化能够实现二三维融合,将二维面板与三维场景无缝结…

你真的了解Java内存模型JMM吗?

面试连环call: 1. 什么是Java内存模型(JMM)? 为什么需要JMM? 2. Java线程的工作内存和主内存各自的作用? 3. Java缓存一致性问题? 4. Java的并发编程问题?哈喽,大家好🎉,我是世杰。 本文我为大家介绍面试官经常考察的「Java内存模型JMM相关内容」面试连环call什么是J…

Lucene-7.4.0简要介绍和初学者快速上手

通过一个自建的索引案例,分几篇记录Lucene使用中的心得和存在的问题。 本文的目的是能让初学者快速学会Lucene的使用,所以所涉及的原理都会十分粗浅,而不讨论更深层次的实现过程。 一、什么是Lucene 首先看一下摘自百度百科的定义:“Lucene是一套用于全文检索和搜寻的开源程…

Ubuntu 2204 安装使用 mariadb

1. 查看mariadb版本,实际上使用的还是mysqld命令: mysqld --version 2. 3. 4. 5. 6. 7.

Docker安装命令

事先声明-对于命令直接粘进去执行就可以Docker 分为 CE 和 EE 两大版本。CE 即社区版(免费,支持周期 7 个月),EE 即企业版,强调安全,付费使用,支持周期 24 个月。 Docker CE 分为 stable test 和 nightly 三个更新频道。 最重要一点:Docker CE 支持 64 位版本 CentOS 7…

elemenet 级联

两种数据格式 注释掉的是一种格式,未注释的是另一种格式。<template><div><!-- <select v-model="selectedProvince" @change="provinceChanged"><option v-for="province in provinces" :value="province.code&q…

树莓派4B-PCA9685驱动舵机

直接用树莓派的引脚输出PWM控制舵机,舵机是会出现抖动的。就算代码进行一定的时延迟优化还是会有影响的。现在我们可以使用PCA9685这个模块去驱动舵机,做到高精度控制舵机。前言 不知道你们有没有遇到过这么一种情况,直接用树莓派的引脚输出PWM控制舵机,舵机是会出现抖动的…

docker-compose vs docker-stack

docker-compose vs docker-stack 都是docker两个容器编排工具,docker-compose是属于第三方容器编排工具需要单独安装,docker-stack是docker内置容器编排工具。 docker-compose一般配合K8S使用,目前要容器管理方面K8S有着比较明显的优势,所以docker-compose 目前比较流行。 …

DDP:微软提出动态detection head选择,适配计算资源有限场景 | CVPR 2022

DPP能够对目标检测proposal进行非统一处理,根据proposal选择不同复杂度的算子,加速整体推理过程。从实验结果来看,效果非常不错 来源:晓飞的算法工程笔记 公众号论文: Should All Proposals be Treated Equally in Object Detection?论文地址:https://arxiv.org/abs/2207…

ENVIFormat开源样本库使用教程

前段时间分享了两个开源样本库:GID-ENVIFormat和Five-Billion-Pixels-ENVIFormat样本库。这两个样本库均包含大量影像底图和高质量的样本数据。GID-ENVIFormat样本库包含5类别和15类别样本数据,Five-Billion-Pixels-ENVIFormat包含24类别样本数据。有关样本库数据的获取可参考…

新架构下服务建模,关键在这6步!

经纬恒润基于SystemWeaver平台,按照SOA建模理念为客户提供了新一代基于SOA的企业级电子电气系统协同设计解决方案,可以有效支持服务和信号的混合架构建模。 随着AUTOSAR、SOA、以太网通讯等新技术、新理念的成熟化,面向软件、硬件、网络、电气等多领域的电子电气系统经…

Bond——大数据时代的数据交换和存储格式

设想我们在一家很大的互联网公司做IT方面的规划、开发和维护,有以下这样的应用场景:公司里有若干个不同的开发团队,开发语言有Java、.net、Python、C++....十来种,还有很多外包团队对项目进行开发,大中小系统已经多的数不过来;并且各个团队、系统间都需要进行海量数据的交…