今天才知道extend方法是没有返回值的,程序如下:
s = 'abcde'
a = [None]
for i in a.extend(range(-1, -len(s), -1)) :
print(s[:i])
值得注意的是:for i in ***,***处是函数或方法的返回值,在本例中是None,而不是a的值,一定要区分开。
上面的代码可改为:
s = 'abcde'
for i in [None] + list(range(-1, -len(s), -1)):
print(s[:i])
注意:由于列表切片操作负数索引最多到-1(没有0),所以加上了[None],防止多一次print。还有就是range()函数得到的是range对象,[None]是list对象,不同对象之间不能进行‘+’操作,所以进行list转换。