Python写一个函数, 实现将B转换为KB、MB等
时间: 2024-02-05 12:13:11 浏览: 30
可以使用如下的Python函数,将字节单位转换为KB、MB、GB等:
```python
def convert_bytes(byte):
"""
convert bytes to KB, MB, GB, TB, PB
"""
for unit in ['B', 'KB', 'MB', 'GB', 'TB', 'PB']:
if byte < 1024:
return f"{byte:.2f} {unit}"
byte /= 1024
```
使用示例:
```python
>>> convert_bytes(1024)
'1.00 KB'
>>> convert_bytes(1024*1024)
'1.00 MB'
>>> convert_bytes(1024*1024*1024)
'1.00 GB'
>>> convert_bytes(1024*1024*1024*1024)
'1.00 TB'
```
该函数将字节单位转换为KB、MB、GB、TB、PB等,保留两位小数。
相关问题
python中怎么将b、kb、mb、gb单位统一转为mb
可以先将所有的单位转换为字节(以b为单位),然后再将所有的字节转换为MB单位。具体的实现可以参考下面的代码:
```python
def convert_to_mb(size_str):
size = float(size_str[:-2])
unit = size_str[-2:].lower()
if unit == 'b':
size = size / 1024 / 1024
elif unit == 'kb':
size = size / 1024
elif unit == 'gb':
size = size * 1024
return size
```
这个函数接受一个字符串类型的大小值,例如"10.5MB",然后将其转换为以MB为单位的浮点数类型。在函数内部,先将字符串中的数字部分转换为浮点数,然后根据单位进行相应的转换,最后返回转换后的结果。
用python语言对影像文件大小,可以进行单位换算,如将字节转换为MB或GB。
好的,你可以使用以下代码将影像文件大小进行单位换算,将字节转换为MB或GB:
```python
import os
import math
def convert_size(size_bytes):
if size_bytes == 0:
return "0B"
size_name = ("B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB")
i = int(math.floor(math.log(size_bytes, 1024)))
p = math.pow(1024, i)
s = round(size_bytes / p, 2)
return f"{s} {size_name[i]}"
file_path = 'your_file_path'
file_size = os.path.getsize(file_path)
file_size_converted = convert_size(file_size)
print(f"The file size of {file_path} is {file_size_converted}")
```
在上面的代码中,convert_size()函数将字节转换为不同的单位,根据文件大小的不同,会自动选择转换为B、KB、MB、GB等单位。将函数应用于影像文件大小,就能将字节转换为MB或GB。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)