【Python】將4*4數組旋轉90度新數組


需求:將一個4*4的數組90度旋轉生成新的4*4數組

原來的4*4數組:
[0, 1, 2, 3]
[0, 1, 2, 3]
[0, 1, 2, 3]
[0, 1, 2, 3]
90度旋轉后的4*4數組:
[0, 0, 0, 0]
[1, 1, 1, 1]
[2, 2, 2, 2]
[3, 3, 3, 3]

圖解過程:

第一步:

第二步:

第三步:

代碼如下:

 1 # 初始化一個4*4的數組
 2 array =[ [col for col in range(4)] for row in range(4)]
 3 # 打印看看數組的樣子
 4 for row in array:
 5     print(row)
 6 # 大循環:通過enumerate函數找到array的行索引和行數
 7 for r_index,row in enumerate(array):
 8     # 小循環
 9     for c_index in range(r_index,len(row)):
10         # 將每次循環中的第一列的值存入臨時變量temp
11         temp = array[c_index][r_index]
12         # 將每次循環中的第一行的值替換給每次循環中第一列的值
13         array[c_index][r_index] = array[r_index][c_index]
14         # 將之前存入臨時變量temp的值替換給每次循環中的第一行的值
15         array[r_index][c_index] =temp
16     print('-------------------')
17     for r in array:print(r)

 換一個方式實現:

1 # 初始化一個4*4的數組
2 array2 =[ [col for col in range(4)] for row in range(4)]
3 for i in range(len(array2)):
4     array_new = [array2[i][i] for row in range(4)]
5     print(array_new)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM