python - Python 3 中嵌套列表的对角线

标签 python list nested

我在一个列表中有几个列表,它们形成了一个圈和叉的游戏:

list = [
        ['X', 'O', 'O'], 
        ['O', 'X', 'O'], 
        [' ', 'X', ' ']
       ]

我需要编写一个函数,返回游戏的对角线从左上角到右下角,然后从右上角到左下角,因此输出为:

diags = (['X', 'X', ' '],['O', 'X', ' '])

我尝试过各种嵌套 for 循环的组合,但似乎无法理解它。

最佳答案

nw_to_se = [your_list[i][i] for i in range(3)]
ne_to_sw = [your_list[i][2-i] for i in range(3)]
diags = (nw_to_se, ne_to_sw)

您还可以使用 [-i-1] 来代替 [2-i],它可以缩放到任意大小的正方形。

关于python - Python 3 中嵌套列表的对角线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15737011/

相关文章:

python - 2020 年 Google 编程挑战题 : Unspecified Words

python - 在服务器上安全地执行不受信任的Python代码

R:data.table 按组计算多个变量的加权平均值,每个变量具有多个权重变量

sql - 如何递归查找 child 的所有ID?

java - 如何使用 Jackson 将列表内容序列化为平面 JSON 对象?

python - 使用 selenium 和 python 将文本发送到 ace 编辑器

python - 根据类型过滤类的属性

r - 动态增加 Rcpp 中列表的大小

c# - 如何将列表中的项目排列成系列排列

python - 保持嵌套字典中的输入顺序