python – 如何将列表或字符串解析为固定长度的块

前端之家收集整理的这篇文章主要介绍了python – 如何将列表或字符串解析为固定长度的块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我真的陷入了一个基本问题.我试图获取一个项目的列表,并将其分成许多项目的列表,每个项目的字符长度为10.例如,给出一个列表,其中包含一个项目,[‘111111111122222222223333333333’],输出将产生:
1111111111
2222222222
3333333333

我觉得这很简单,但我很难过.我试图创建一个这样的函数

def parser(nub):    
    while len(nub) > 10:  
        for subnub in nub:  
            subnub = nub[::10]
            return(subnub)  
    else:  
        print('Done')

显然,这不起作用.有什么建议?使用字符串比列表更容易吗?

解决方法

有人提出了一个相关的问题:
Slicing a list into a list of sub-lists

例如,如果您的源列表是:

the_list = [1,2,3,4,5,6,7,8,9,... ]

你可以拆分它像:

split_list = [the_list[i:i+n] for i in range(0,len(the_list),n)]

假设n是您的子列表长度,结果将是:

[[1,...,n],[n+1,n+2,n+3,2n],...]

然后你可以像下面这样迭代它:

for sub_list in split_list:
    # Do something to the sub_list

字符串也是如此.

这是一个实际的例子:

>>> n = 2
>>> listo = [1,9]
>>> split_list = [listo[i:i+n] for i in range(0,len(listo),n)]
>>> split_list
[[1,2],[3,4],[5,6],[7,8],[9]]

>>> listo = '123456789'
>>> split_list = [listo[i:i+n] for i in range(0,n)]
>>> split_list
['12','34','56','78','9']
原文链接:https://www.f2er.com/python/186202.html

猜你在找的Python相关文章