否-列表推导旨在与具有返回值的函数一起使用。这是它们的语义定义的方式:
列表理解为创建列表提供了一种简洁的方法,而无需使用map(),filter()和/或lambda。所得的列表定义往往比使用这些构造构建的列表更清晰。每个列表理解都包含一个表达式,后跟一个for子句,然后是零个或多个for或if子句。结果将是一个列表,该列表是通过在紧随其后的for和if子句的上下文中评估表达式而得出的。
读完此书后,应该很清楚,“对没有返回值的函数的列表理解”是矛盾的。
只需使用一个
for循环就可以实现“一次性”:
import randomL = []for x in range(5): l = range(5) random.shuffle(l) L.append(l)
干净简单。您的
shuffled函数也很好, 可以 在列表理解中使用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)