生成指定大小的文件是数据处理中的常见需求。在Python中,有两种解决方案可以实现生成指定大小的文件。
使用os模块生成指定大小的文件
使用os模块可以通过创建指定大小的临时文件来实现生成指定大小的文件。
- 导入os模块,并定义函数create_file用于生成指定大小的文件。
python
import os
def create_file(file_name, size):
with open(file_name, 'wb') as fout:
fout.write(os.urandom(size))
- 调用create_file函数并传入文件名和大小参数。
python
create_file('test.txt', 1024*1024) #生成1MB大小的文件
以上代码中,create_file函数中的os.urandom
函数可以生成指定大小的随机数据,进而实现生成指定大小的文件。
使用fallocate命令生成指定大小的文件
Linux下fallocate命令可以预先分配指定大小的磁盘空间。Python中可以使用subprocess模块来调用fallocate命令实现生成指定大小的文件。
- 导入subprocess模块。
python
import subprocess
- 定义函数create_file用于生成指定大小的文件。
python
def create_file(file_name, size):
command = ['fallocate', '-l', str(size), file_name]
subprocess.call(command)
- 调用create_file函数并传入文件名和大小参数。
python
create_file('test.txt', 1024*1024) #生成1MB大小的文件
以上代码中,create_file函数中的subprocess.call函数可以调用fallocate命令并传入大小和文件名参数,实现生成指定大小的文件。
示例:生成1GB大小的文件
create_file('test.txt', 1024*1024*1024)
无论是使用os模块还是subprocess模块,都可以实现生成指定大小的文件。需要根据具体情况选择最适合的方案。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python生成指定大小的文件两种解决方案 - Python技术站