python 获取二进制文件大小
时间: 2023-06-06 19:07:41 浏览: 442
可以使用os模块中的stat()函数来获取文件大小,代码如下:
```python
import os
def get_file_size(file_path):
"""获取文件大小,单位为字节"""
return os.stat(file_path).st_size
```
其中,file_path为文件的路径名。获取的文件大小单位为字节,如果需要转换为其他单位(如MB、GB),可以进行相应的计算。
相关问题
python 二进制文件的截取
要截取Python二进制文件的一部分数据,可以使用以下步骤:
1. 首先,使用命令行参数将要截取的文件路径和要截取的百分比作为输入传递给Python脚本。例如,你可以在命令行中输入以下命令来运行脚本:
`python script.py input.dat 50`
2. 在Python脚本中,使用`sys.argv`获取命令行参数,其中`sys.argv`表示输入文件的路径,`sys.argv`表示要截取的百分比。
3. 打开输入文件和输出文件,以二进制模式读取输入文件并以相同的模式写入输出文件。
4. 使用`os.path.getsize()`函数获取输入文件的大小,以便计算要截取的数据量。
5. 根据给定的百分比计算要截取的数据数量,并将其转换为整数。
6. 使用一个循环来读取输入文件中的数据块,每个数据块的大小为784字节。在每次循环中,读取784字节的数据块并将其写入输出文件。
7. 最后,记得关闭输入文件和输出文件。
下面是一个示例的Python代码,展示了如何实现二进制文件的截取:
```python
import sys
import os
if __name__ == "__main__":
# 获取命令行参数
datPath = sys.argv + "_" + str(k) + "%.dat"
k = k/100.0
try:
# 打开输入文件和输出文件
datIn = open(datPath, "rb")
datOut = open(datOut, "wb")
# 获取输入文件的大小
size = os.path.getsize(datPath)
# 计算要截取的数据数量
nIn = size/784
nOut = int(nIn * k)
# 截取数据并写入输出文件
for i in range(0, nOut):
temp = datIn.read(784)
datOut.write(temp)
except Exception as e:
print(e)
exit(-2)
finally:
# 关闭文件
datIn.close()
datOut.close()
```
这个脚本接受两个命令行参数,第一个是要截取的文件路径,第二个是要截取的百分比。它会根据给定的百分比截取输入文件的数据,并将其写入一个新的文件中。截取后的文件名是在输入文件名的基础上添加了百分比的一部分。
请注意,这只是一个基本的示例代码,你可以根据实际需求进行修改和优化。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
获取二进制文件有多少字节
要获取二进制文件的大小,可以使用操作系统提供的文件属性功能,或者使用编程语言中的文件操作函数。以下是使用Python语言计算二进制文件大小的示例代码:
```python
import os
filename = "example.bin"
file_size = os.path.getsize(filename)
print(f"The size of {filename} is {file_size} bytes.")
```
其中,`os.path.getsize()` 函数可以获取指定文件的大小,单位是字节。在上述代码中,我们将文件名赋值给 `filename` 变量,然后调用 `os.path.getsize()` 函数获取文件大小,最后打印输出结果。
你可以将 `filename` 变量替换为你要计算大小的二进制文件名。
阅读全文