鱼C论坛

 找回密码
 立即注册
查看: 1065|回复: 2

[已解决]想知道关于列表的更多

[复制链接]
发表于 2023-8-10 17:39:28 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
matrix=[[1,2,3],
                [4,5,6],
        [7,8,9]]   
print(matrix[:][::1][1])   
结果是
[4, 5, 6]
想知道为什么?
请求各位解答
最佳答案
2023-8-10 17:39:45
这段代码中 matrix 是一个二维列表,即一个包含多个列表作为元素的列表。每个内部列表代表矩阵的一行。

现在让我们来逐步解析这段代码以便理解输出结果 [4, 5, 6] 是如何得到的:

1. matrix[:]: 这是一个切片操作,表示对整个列表 matrix 进行切片,相当于创建了原列表的一个副本。因此,它返回了一个与原列表完全相同的新列表。

2. [::1]: 在前一步的结果上进行切片。由于使用了步长为 1,所以它不会改变切片中的元素顺序,仍然返回整个列表。

3. [1]: 对前一步结果的列表进行索引操作,返回索引为 1 的元素。在这种情况下,索引 1 对应的是原列表的第二个内部列表 [4, 5, 6]

因此,最终输出结果为 [4, 5, 6]

需要注意的是,切片操作 matrix[:] 创建了一个新的副本列表,这样可以确保后续的切片和索引操作都是在副本列表上进行的,而不会影响原始的 matrix 列表。

希望以上解答能够解决你的疑惑。如有任何进一步的问题,请随时提问。
如果问题已经解决,请设置最佳答案

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-8-10 17:39:45 | 显示全部楼层    本楼为最佳答案   
这段代码中 matrix 是一个二维列表,即一个包含多个列表作为元素的列表。每个内部列表代表矩阵的一行。

现在让我们来逐步解析这段代码以便理解输出结果 [4, 5, 6] 是如何得到的:

1. matrix[:]: 这是一个切片操作,表示对整个列表 matrix 进行切片,相当于创建了原列表的一个副本。因此,它返回了一个与原列表完全相同的新列表。

2. [::1]: 在前一步的结果上进行切片。由于使用了步长为 1,所以它不会改变切片中的元素顺序,仍然返回整个列表。

3. [1]: 对前一步结果的列表进行索引操作,返回索引为 1 的元素。在这种情况下,索引 1 对应的是原列表的第二个内部列表 [4, 5, 6]

因此,最终输出结果为 [4, 5, 6]

需要注意的是,切片操作 matrix[:] 创建了一个新的副本列表,这样可以确保后续的切片和索引操作都是在副本列表上进行的,而不会影响原始的 matrix 列表。

希望以上解答能够解决你的疑惑。如有任何进一步的问题,请随时提问。
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-8-10 17:39:50 | 显示全部楼层
在这个代码中,matrix是一个二维列表,表示一个3x3的矩阵。print语句中的matrix[:][::1][1]是一个列表切片操作,它的含义是从matrix中取出所有的行,然后按照原来的顺序返回一个新的列表,再从这个新的列表中取出索引为1的元素。

首先,matrix[:]表示取出matrix中所有的行,返回一个新的列表。这里的[:]表示切片操作,它的含义是从列表的开始到结束,相当于复制整个列表。

然后,[::1]表示按照原来的顺序返回一个新的列表。这里的[::1]中的1表示步长为1,表示不跳过任何元素,返回所有元素。

最后,[1]表示取出索引为1的元素。由于前面的操作返回的是一个新的列表,所以我们可以使用索引来访问其中的元素。索引从0开始,所以索引为1表示第二个元素。

综上所述,matrix[:][::1][1]的含义是先取出matrix中所有的行,然后按照原来的顺序返回一个新的列表,最后取出这个新的列表中索引为1的元素。所以结果是[4, 5, 6]。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-14 18:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表