This question already has answers here:
How do you split a list into evenly sized chunks?
                                
                                    (62个答案)
                                
                        
                                6年前关闭。
            
                    
我有很长的二进制数存储在字符串中。每个8个字符(即每个8位块)代表一个ASCII字符代码。例如,0100100001101001是2个8位数字(01001000&01101001),它们是'H'和'i'的字符代码。因此,整个过程都是“ Hi”的二进制表示形式。

我的问题是,是否有一种方法可以强制for循环遍历更大的字符串,以便一次可以读取8个字母?换句话说,我希望for循环在每次循环迭代中将8个字符分配给我的迭代器变量,而不是1,以便我可以轻松确定由字符串表示的字符代码。

提前致谢。

最佳答案

仅仅以可能不是最合适的方式来回答这个问题,但是可以使用textwrap

>>> import textwrap
>>> s = '0100100001101001'
>>> textwrap.wrap(s, 8)
['01001000', '01101001']

10-08 08:28
查看更多