0
a=[3.0,2.5,1.0,'1/3','4/5']
我想排序該陣列中,我試圖轉換字符串另一個數組即,排序與字符串的數組和浮法
a[3]=['1','3']
然後將它們轉換爲浮起並然後執行除法。問題是,它成爲當我使用a.sort對它們進行排序比較複雜,我不知道如何把他們帶回自己的字符串形式 我需要知道如何在這個沒有導入分數模塊
請幫助。
a=[3.0,2.5,1.0,'1/3','4/5']
我想排序該陣列中,我試圖轉換字符串另一個數組即,排序與字符串的數組和浮法
a[3]=['1','3']
然後將它們轉換爲浮起並然後執行除法。問題是,它成爲當我使用a.sort對它們進行排序比較複雜,我不知道如何把他們帶回自己的字符串形式 我需要知道如何在這個沒有導入分數模塊
請幫助。
您不需要將其轉換回來。使用key
參數(函數)sorted
,list.sort
。鍵功能的返回值將用於比較。
>>> def key(n):
... if isinstance(n, str):
... a, b = map(float, n.split('/'))
... n = a/b
... return n
...
>>> a = [3.0,2.5,1.0,'1/3','4/5']
>>> sorted(a, key=key)
['1/3', '4/5', 1.0, 2.5, 3.0]