picks :: [a] -> [(a, [a])]
picks [] = []
picks (x:xs) = (x,xs) : [(y,x:ys)| (y,ys) <- picks xs]
Run Code Online (Sandbox Code Playgroud)
picks [1..4] = [(1,[2,3,4]),(2,[1,3,4]),(3,[1,2,4]),(4,[1,2,3])]
这个 Haskell 函数非常神奇,但为什么呢?列表中的前两个元组很明显,但其余的元组是如何构建的,这让我很困惑。
我可以在 Python 中将所有内容转换为字符串吗?
例如,这会抛出错误吗?
def test(arg):
try:
arg=str(arg)
except ValueError:
Run Code Online (Sandbox Code Playgroud)