一个矩阵我们想让它通过编程 实现各种花样的变化怎么办呢
我发现百度没有很好的代码 我就自己研究啦
用到的函数 pop([index])删除并返回列表中下标为index 默认为-1 的元素
reverse()对列表所有元素进行逆序
好多问题 按行逆序输出矩阵 问题描述1初始矩阵a [[1,2,3],[4,5,6]]变化成a [[4,5,6],[1,2,3]]
n 2 a [[1,2,3],[4,5,6]] print( 初始矩阵 ) for i in range(n): for j in range(m): print(a[i][j],end ) print() print( 按行倒序输出 ) a.reverse() for i in range(n): for j in range(m): print(a[i][j],end ) print()运行结果 按列倒序输出矩阵 问题描述2
初始矩阵变化成a [[3,2,1],[6,5,4]]
n 2 a [[1,2,3],[4,5,6]] print( 初始矩阵 ) for i in range(n): for j in range(m): print(a[i][j],end ) print() print( 按列倒序输出 ) for i in range(n): for j in range(m): print(a[i].pop(),end ) print()运行结果 顺时针旋转90度 问题描述3
初始矩阵变化成a [[4,1],[5,2],[6,3]]
n 2 a [[1,2,3],[4,5,6]] print( 初始矩阵 ) for i in range(n): for j in range(m): print(a[i][j],end ) print() print( 顺时针旋转90度 ) a.reverse()#将矩阵中的元素按行逆序 #改变矩阵的形状 for i in range(m): for j in range(n): print(a[j][i],end ) print()运行结果 顺、逆时针旋转180度 问题描述4
初始矩阵变化成a [[6,5,4],[3,2,1]]
n 2 a [[1,2,3],[4,5,6]] print( 初始矩阵 ) for i in range(n): for j in range(m): print(a[i][j],end ) print() print( 顺时针旋转180度 ) a.reverse()#将矩阵中的元素按行逆序 #按列倒序输出 for i in range(n): for j in range(m): print(a[i].pop(),end ) print()运行结果
逆时针旋转90度 问题描述5
初始矩阵变化成a [[3,6],[2,5],[1,4]]
n 2 a [[1,2,3],[4,5,6]] print( 初始矩阵 ) for i in range(n): for j in range(m): print(a[i][j],end ) print() print( 逆时针旋转90度 ) #改变矩阵的形状,再倒序输出 for i in range(m): for j in range(n): print(a[j].pop(),end ) print()运行结果
对问题的思考
python自带了很多函数 我们要充分的利用起来。刚开始我解决问题的时候想得是该一下循环和数组的下标 因为c、c 语言解决这个问题的时候就很容易就解决了。但是呢 python总是说IndexError: list index out of range 好的下标越界了 可是我们定义数组的时候它也不让这么写啊 例如 a[105][105]) 我们只能这么写(a [])。可能我刚学 还不知道解决的方法。大家如果知道的话 一定要告诉我呀。
所以说呢 它不让这么改变 我们只能用函数来解决啦。
今天又是爱学习的好孩子呢。



