从python中的comprehension返回多个列表

yip*_*321 7 python list-comprehension

Python中有什么方法可以从理解中返回多个列表吗?

我想做一些事情的效果:

x,y = [i,(-1*j) for (i,j) in enumerate(range(10))]
# x = [0 .. 9]
# y = [0 .. -9]
Run Code Online (Sandbox Code Playgroud)

这是一个愚蠢的例子,但我只是想知道它是否可能.

Jor*_*ley 2

x,y =zip(* [(i,(-1*j)) for (i,j) in enumerate(range(10))] )
Run Code Online (Sandbox Code Playgroud)

你只需解压缩列表

xy = [(1,2),(3,4),(5,6)]
x,y = zip(*xy)
# x = (1,3,5)
# y = (2,4,6)
Run Code Online (Sandbox Code Playgroud)

  • 这两个的返回类型都是元组而不是列表 (2认同)