RUNOOB python 67 数组的元素互换
生活随笔
收集整理的這篇文章主要介紹了
RUNOOB python 67 数组的元素互换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
用來練手的Python練習題,原題鏈接:python練習實例67
題干: 輸入數組,最大的與第一個元素交換,最小的與最后一個元素交換,輸出數組
代碼如下:
import numpy as nptable = np.array([10,4,9,3,11,25,37,15,2,231,672,22]) #定義swap函數用于交換兩個變量的值 def swap(a,b):return b,a# 保存最大值 maxvalue = np.max(table) # 最大值處賦值為數組的第一個元素 table[np.argmax(table)] = table[0] # 賦值第一個元素為數組的最大值 table[0] = maxvalue # 最小的與最后一個元素交換 table[table.shape[0]-1], table[np.argmin(table)] = swap(table[table.shape[0]-1],table[np.argmin(table)]) print(table)輸出結果如下:
需要注意的是,上述代碼我們發現,進行兩個交換的時候并沒有使用同一種方式。在進行最小的元素與最后一個元素交換操作時,我們可以直接調用swap函數,而在交換最大值和數組第一個元素時,我們使用了一個中間值,maxvalue。那么如果都使用swap方法會怎么樣呢,代碼如下:
table[0],table[np.argmax(table)] = swap(table[0],table[np.argmax(table)]) print(table[0]) table[table.shape[0]-1], table[np.argmin(table)] = swap(table[table.shape[0]-1],table[np.argmin(table)]) print(table)輸出結果如下:
我們發現,當我們想將最大值和數組第一個元素交換位置時,使用swap函數并不能滿足我們的需求,但交換最小值和數組最后一位元素是可以實現的。
總結
以上是生活随笔為你收集整理的RUNOOB python 67 数组的元素互换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python打印杨辉三角形 RUNOOB
- 下一篇: 数组元素前移后移 RUNOOB pyth