python - 访问嵌套列表中的元素

标签 python list nested-lists

我在一个名为“train_data”的嵌套列表中有元素,如示例所示:

[0] [0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494, 0]
[1] [0.467681, 1.0, 1.0, 0.778987, 0.069336, 0.0, 56.571999, 0.024675, 0]
[2] [0.393258, 1.0, 1.0, 0.843201, 0.068779, 0.0, 66.866669, 0.069206, 1]

我想访问具有前 8 列的所有行(除最后一列外的所有行),以及仅具有最后一列的所有行。我需要在没有 for 循环的情况下,在一行代码中完成此操作。

我试过这样的:

print train_data[0][:]
print train_data[:][0]

但这给了我相同的结果:

[0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494, 0]
[0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494, 0]

有人可以帮我吗?

编辑:

抱歉,第一个查询的预期输出是:

[0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494]
[0.467681, 1.0, 1.0, 0.778987, 0.069336, 0.0, 56.571999, 0.024675]
[0.393258, 1.0, 1.0, 0.843201, 0.068779, 0.0, 66.866669, 0.069206]

第二个查询是:

[0]
[0]
[1]

最佳答案

您可以使用[:-1] 切片获取除最后一个元素之外的所有元素!

>>> l1=[0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494, 0]
>>> l2=[0.467681, 1.0, 1.0, 0.778987, 0.069336, 0.0, 56.571999, 0.024675, 0]
>>> l3=[0.393258, 1.0, 1.0, 0.843201, 0.068779, 0.0, 66.866669, 0.069206, 1]
>>> l=[l1,l2,l3]
>>> [i[:-1] for i in l]
[[0.935897, 1.0, 1.0, 0.928772, 0.053629, 0.0, 39.559883, 0.009494], [0.467681, 1.0, 1.0, 0.778987, 0.069336, 0.0, 56.571999, 0.024675], [0.393258, 1.0, 1.0, 0.843201, 0.068779, 0.0, 66.866669, 0.069206]]

关于python - 访问嵌套列表中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27521956/

相关文章:

Python,尝试解析html以获取电子邮件地址

algorithm - 为什么Graph adjacency不定义为邻接集,而是邻接表?

c++ - 在 C++ 的构造函数中实例化一个列表

python-3.x - 我在使用 *mul* 运算符乘以变量时遇到问题

R map() 将 2 层映射到列表中

python - numpy中多维数组的自相关

python - 使用 Python 2.7.2 下载、命名和保存文件

html - 嵌套列表的 CSS

python - 检查一个单词是否在作为字典值的列表中

python - 在列表中重复列表 X 次