Python 从元组列表中切片

Python 从元组列表中切片,python,Python,我制作了一个元组列表(每个元组代表一个2D点),然后我想使用pyplot来绘制它。所以我的问题是,我不能通过切片列表来获得x坐标。这是我正在使用的代码 points = [(1,2), (3,4), (5,6)] plt.plot(points[:][0], points[:][1], 'o') 如果我想打印 in: print(points[:][0]) out: (1, 2) 您知道如何获取第一个元组元素的列表吗?解决方案@ForceBru points = [(1,2), (3,4)

我制作了一个元组列表(每个元组代表一个2D点),然后我想使用pyplot来绘制它。所以我的问题是,我不能通过切片列表来获得x坐标。这是我正在使用的代码

points = [(1,2), (3,4), (5,6)]
plt.plot(points[:][0], points[:][1], 'o')
如果我想打印

in:  print(points[:][0])
out: (1, 2)
您知道如何获取第一个元组元素的列表吗?

解决方案@ForceBru

points = [(1,2), (3,4), (5,6)]
x = [p[0] for p in points]
y = [p[1] for p in points]
或者更简单的方法(x,y现在是元组)


你所需要做的就是这样一个理解列表:

points = [(1,2), (3,4), (5,6)]
x_coordinats = [x[0] for x in points]
y_coordinats = [y[0] for y in points]

这里可以找到可能的重复:字面意思:获取每个元组的第一个元素:
[x代表x,y代表点]
,同样地,
y
@ForceBru也像charm一样工作,谢谢你的帮助。@Legolando,不客气!当然,这有点太重复了,你也可以得到这样一对漂亮的元组:
X,Y=zip(*points)
points = [(1,2), (3,4), (5,6)]
x_coordinats = [x[0] for x in points]
y_coordinats = [y[0] for y in points]