给定一个列表和一些整数n,以下Python函数应该返回一个大小为n的所有可能子列表的列表。例如:给定[1,2,3]和n = 2,代码应生成[[1,2],[2,3]]。不带if语句的以下代码适用于所有值,除非n = 0。
def Sublists (lst, n):
if n==0
return [ [] ]
else
return [lst [t:t+n] for t in range ( 0, len(lst) + 1 - n)]
print Sublists ([1, 2, 3, 4], 3)
但是,此代码会生成错误:
if n==0
^
SyntaxError: invalid syntax
答案 0 :(得分:1)
你错过了冒号:
if n==0:
else
之后你还需要一个。