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

时间:2017-01-02 02:40:58

标签: python-2.7

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

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

我想首先在这上面使用lambda函数得到结果,但错误是这样引发的,

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

现在,我知道lambda函数对于这个问题出了什么问题,但是我无法正确地纠正这个代码。请帮忙!

1 个答案:

答案 0 :(得分:0)

这个怎么样

>>> 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
>>>