我不是 python 程序員,所以來到這里..我知道 cmp 在 python3 中已被貶值,我正在嘗試將此 python 2 代碼遷移到 python3,我將不勝感激。def get_datalink_points( drivers ):points = []for driver in drivers: points += driver.pointsdef compare_datalink_target( a, b ): target_a = target_b = '' if a.datalink is not None: target_a = a.datalink.target if b.datalink is not None: target_b = b.datalink.target return cmp( target_a, target_b )return sorted( points, cmp = compare_datalink_target )此代碼當前生成以下錯誤:Exception Type: TypeErrorException Value: 'cmp' is an invalid keyword argument for sort()謝謝你的幫助。
1 回答

飲歌長嘯
TA貢獻1951條經驗 獲得超3個贊
sorted()
Python 3 中有效的等效調用是:
return sorted( points, key=lambda x: x.datalink.target if x.datalink is not None else '' )
添加回答
舉報
0/150
提交
取消