python将list转为矩阵_使用python中的list矩阵顺时针旋转90度

我试着在python中将一个3*3矩阵顺时针旋转90度。

我已经确定了在[I][j]的元素指向了[j][new_I]。

这里新的_i依赖于前面的i,所以我为它做了一个函数,叫做循环减法。在

如果我是新的

如果我是1,那么new_i就是1

如果我是2,那么new_i就是0

行刑后,给了我意想不到的结果。在

我把每次迭代中发生的一切都打印出来了。

我无法理解某些元素是如何被不同元素取代的。在'''

1 2 3 7 4 1

4 5 6 rotate 90 degrees 8 5 2

7 8 9 9 6 3

'''

def circular_subtraction(i):

new_i = i

if(i==0):

new_i = 2

elif(i==1):

new_i = 1

elif(i==2):

new_i = 0

return new_i

def rotate_clock(matrix):

new_matrix = matrix

for i in range(len(matrix)):

for j in range(len(matrix)):

new_i = circular_subtraction(i)

new_matrix[j][new_i] = matrix[i][j]

print("New element added from {},{} to {},{} ::: {} to {}".format(i+1,j+1,j+1,new_i+1,matrix[i][j],new_matrix[j][new_i]))

for each_row in new_matrix:

print(each_row)

matrix = [[1,2,3],[4,5,6],[7,8,9]]

print("Length of the matrix : ",len(matrix))

for each_row in matrix:

print(each_row)

print()

matrix = rotate_clock(matrix)

输入矩阵是

^{pr2}$

预期结果是:[7, 4, 1]

[8, 5, 2]

[9, 6, 3]

结果是:[7, 4, 1]

[2, 5, 2]

[1, 2, 1]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值