Python 上载大小限制(字节)(django)
我正在测试表单中的Python 上载大小限制(字节)(django),python,django,byte,Python,Django,Byte,我正在测试表单中的cleaned_数据['content'].size>MAX_size,以验证上载大小 当我在谷歌上搜索如何在Django中检查上传的长度时,我遇到了几个地方(下面的链接),人们在这些地方使用某种格式(似乎以2的幂为基础)以字节表示MB 我想一定有很好的理由 为什么要使用这种格式?如何计算下面的值?(摘自相关问题) 仅仅因为一个千字节等于1024字节。。。对于字节,“整数”是2的幂而不是10的幂 严格地说,1024字节是一个“kibibyte”,根据国际单位制,一个“KB”
cleaned_数据['content'].size>MAX_size
,以验证上载大小
当我在谷歌上搜索如何在Django中检查上传的长度时,我遇到了几个地方(下面的链接),人们在这些地方使用某种格式(似乎以2的幂为基础)以字节表示MB
我想一定有很好的理由
为什么要使用这种格式?如何计算下面的值?(摘自相关问题)
仅仅因为一个千字节等于1024字节。。。对于字节,“整数”是2的幂而不是10的幂 严格地说,1024字节是一个“kibibyte”,根据国际单位制,一个“KB”是1000字节,就像一公斤是1000克 然而,Windows等操作系统倾向于使用前一种定义 因此,例如,如果您想将上传大小限制为2MB,则应使用
2*2**20
(或2 x 1024**2
)
或者nmb
的一般形式是n*1024**2
谢谢!但我仍然不明白如何在我在问题中添加的示例中计算250MB和500MB请参见我答案的最后一句,即
n=250
或n=500
不匹配(500MB给出524288000)。那么,这可能只是他们材料中的一个错误?试试谷歌:…它给出了国际单位制(即5亿),如果你切换到“兆字节”,你会得到与我的答案相同的答案,所以他们的数字大部分是正确的,但看起来250MB的值实际上是205MB(可能是计算器上的一个输入错误…),然后将其加倍,得到500MB的值,实际上是410MB(严格地说是“兆字节”)
# 2.5MB - 2621440
# 5MB - 5242880
# 10MB - 10485760
# 20MB - 20971520
# 50MB - 5242880
# 100MB 104857600
# 250MB - 214958080
# 500MB - 429916160