优雅的分块数据方式

时间:2011-12-07 02:42:13

标签: python string

假设我想将一些数据拆分成60个字符的部分并将它们存储在哈希中。我有以下解决方案,但对我来说似乎有点脏:(因为迭代和不断重新分配)

i = 0
while signature != '':
   header_hash['Some-Authorization-' + i] = signature[:60]
   signature = signature[60:]
   i += 1

你能想出一个更好的处理方法吗?

1 个答案:

答案 0 :(得分:3)

虽然与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的任何好处。