在起始ch上每n个字符迭代一次python字符串

2024-10-04 11:26:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到一种优雅的方法,每n个字符分割一个python字符串,迭代从哪个字符开始。在

例如,假设我有一个包含以下内容的字符串:

ANDTLGY

我想将字符串拆分为一组3个字符,如下所示:

^{pr2}$

Tags: 方法字符串字符个字符pr2andtlgy
3条回答

怎么样

a='ANDTLGY'

def chopper(s,chop=3):
     if len(s) < chop:
        return []
     return [s[0:chop]] + chopper(s[1:],chop)

这就回来了

^{pr2}$
a='ANDTLGY'
def nlength_parts(a,n):
    return map(''.join,zip(*[a[i:] for i in range(n)]))

print nlength_parts(a,3)

希望你能向教授解释它是如何工作的;)

简单的方法是将字符串切片与列表理解结合使用:

s = 'ANDTLGY'
[s[i:i+3] for i in range(len(s)-2)]
#output:
['AND', 'NDT', 'DTL', 'TLG', 'LGY']

相关问题 更多 >