本文实例为大家分享了python实现二维数组的对角线遍历,供大家参考,具体内容如下
第一种情况:从左上角出发,右下角结束
要完成的事情,就像下图:
话不多说,直接上Python实现代码与结果展示:
# 输出遍历的索引与其对应的值 A = [[1,2,3], [4,5,6], [7,8,9]] n = len(A) for i in range(n+n-1): for j in range(i+1): k = i-j if k<n and k>=0 and j<n: print("对应索引:",j,k, " 对应值:",A[j][k])
第二种情况:从右上角出发,左下角结束
情况如下:
原以为这一种的解决方式会和上一种的一样的简单,但是尝试一下失败了,只有一个“曲线救国”的解决办法:依据索引关系输出结果
自己的Python实现代码与结果展示:
A = [[1,2,3], [4,5,6], [7,8,9]] # 得到下标索引 size = len(A) list_i = [] # 第一索引 list_j = [] # 第二索引正序 l1 = [] # 第二索引逆序 for m in range(2*size-1): for n in range(m+1): k = m-n if k<size and k>=0 and n<size: list_i.append(n) list_j.append(k) print("第一索引i:\n", list_i) print("第二索引j:") for i in range(len(list_j)): a = list_j.pop() l1.append(a) print(l1, "\n"*2, "输出结果如下:") for i in range(len(list_i)): print(A[list_i[i]][l1[i]], end= " ")
前辈jiaobuchong的Python实现代码与结果展示:
arr1 = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]] for each_arr in arr1: print(each_arr) tem_arr = [] # 用来记录数组值 rows = len(arr1) cols = len(arr1[0]) def isValidIndex(x, n): return (x >= 0 and x < n) # 每一行的每个值的数组下标的差都一样, for i in range(cols * 2 - 1): # 共输出 cols * 2 - 1 行 diff = cols - i - 1 # 每一行的差 for j in range(cols): # 数组中每一个值的下标范围是0到cols k = j - diff # 通过一个下标值计算另一个下标值 if isValidIndex(k, rows): # 剩下就是判断这些下标值是否满足当前的情况, 这一步不怎么好理解 print(arr1[k][j], ' ', end='') print()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 群星《2022年度发烧天碟》无损黑胶碟 2CD[WAV+CUE][1.4G]
- 罗文1983-罗文甄妮-射雕英雄传(纯银AMCD)[WAV+CUE]
- 群星《亚洲故事香港纯弦》雨果UPMAGCD2024[低速原抓WAV+CUE]
- 群星《经典咏流传》限量1:1母盘直刻[低速原抓WAV+CUE]
- 庾澄庆1993《老实情歌》福茂唱片[WAV+CUE][1G]
- 许巍《在别处》美卡首版[WAV+CUE][1G]
- 林子祥《单手拍掌》华纳香港版[WAV+CUE][1G]
- 郑秀文.1997-我们的主题曲【华纳】【WAV+CUE】
- 群星.2001-生命因爱动听电影原创音乐AVCD【MEDIA】【WAV+CUE】
- 林志颖.1994-别了晴雨的回忆【飞碟】【WAV+CUE】
- 群星《经典咏流传2》限量1:1母盘直刻[低速原抓WAV+CUE]
- 【蓝卡唱片】卫海霞《乐海霞音珍藏版》WAV分轨
- 杨小琳《金装杨小琳》24K金碟特别版[低速原抓WAV+CUE]
- 群星《国风超有戏 第8期》[320K/MP3][30.32MB]
- 群星《国风超有戏 第8期》[FLAC/分轨][157.37MB]