所以我在python中有一些二进制数据(在这种情况下是一个jpg图像),我正在从API中作为B64编码的字符串进行检索。有没有一种简单的方法来估计磁盘上这个(图像)文件的大小?
<Image>/9j/4AAQSkZJRgABAgEASABIAAD/4RriRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUA
AAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAeAAAAcgEyAAIAAAAUAAAAkIdp
AAQAAAABAAAApAAAANAACvyAAAAnEAAK/IAAACcQQWRvYmUgUGhvdG9z ....... </Image>
答案 0 :(得分:8)
您可以将字符串的长度乘以3/4以获得以字节为单位的大小。
(len(str) * 3) / 4
答案 1 :(得分:0)
我正在使用它:
def size(b64string):
return (len(b64string) * 3) / 4 - b64string.count('=', -2)
我们将填充的长度删除为explained here,该长度为no,一个或两个字符=
。
可能不是最佳的。我没有效率str.count(char)
。另一方面,它仅在长度为2的字符串上执行。