假设我想将一些数据分为60个字符,并将其存储在哈希中。我有以下解决方案,但对我来说似乎有点脏:(由于迭代和不断重新分配)
i = 0
while signature != '':
header_hash['Some-Authorization-' + i] = signature[:60]
signature = signature[60:]
i += 1
您能提出一种更好的方法来处理此问题吗?
最佳答案
尽管与how to evenly split a list into chunks非常相似,但我认为这仍然是一个有效的问题,但将包含对先前问题的部分答案:
def hashing(header_hash, signature, hash_size):
for index, i in enumerate(xrange(len(signature), hash_size)):
header_hash['Some-Authorization-%s' % index] = signature[i:i+hash_size]
这就是我的答案,查看
itertools
函数,前提是我怀疑在分组后重新加入它们会否定使用itertools的任何好处。关于python - 优雅的数据分块方式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8409782/