Python 2.7 如何使用by lambda函数获得正确的输出?

Python 2.7 如何使用by lambda函数获得正确的输出?,python-2.7,Python 2.7,在这个问题中,当我将句子放入python代码中时,我希望得到每10个字符串的分句 起初我想通过使用lambda函数得到结果,但是出现了这样的错误 a = raw_input() if len(a) == 0: pass else: n = divmod(len(a), 10) for i in range(1, n[0]+1): a = a[:i*10 + (lambda x: x=i-1)] + '\n' + a[i*10 + (lambda x: x=

在这个问题中,当我将句子放入python代码中时,我希望得到每10个字符串的分句

起初我想通过使用lambda函数得到结果,但是出现了这样的错误

a = raw_input()
if len(a) == 0:
    pass
else:
    n = divmod(len(a), 10)
    for i in range(1, n[0]+1):
        a = a[:i*10 + (lambda x: x=i-1)] + '\n' + a[i*10 + (lambda x: x=i-1):]
    print a
现在,我知道lambda函数在这个问题上出了一些问题,但是我不能正确地更正这个代码。请帮忙

这个怎么样

a = a[:i*10 + (lambda x: x=i-1)] + '\n' + a[i*10 + (lambda x: x=i-1):]
SyntaxError: invalid syntax

为什么要尝试使用lambda表达式(与lambda表达式计算的值相反)来指定切片?这里似乎不需要lambda函数。如果您对lambdas感兴趣,请查阅以下教程:我想使用lambda函数,因为当我尝试切分句子时,“\n”被添加到句子中。因此,当我尝试分割长度超过20的句子时,在原始句子中添加了两个“\n”。由于“\n”的数量,第一行打印了10个字符串,其他行打印了9个字符串。
>>> t='abra cadabra'
>>> n=3
>>> print "\n".join( t[i:(i+n)] for i in range(0,len(t),n) )
abr
a c
ada
bra
>>>