我想將Python程序轉換爲C#。我不明白這裏做了什麼。Python排序()函數並返回多個值
def mincost(alg):
parts = alg.split(' ')
return sorted([cost(0, parts, 'G0 '),cost(1, parts, 'G1 ')], key=operator.itemgetter(1))[0]
def cost(grip, alg, p = '', c = 0.0, rh = True):
if (len(alg) == 0):
return (postProcess(p),c)
postprocess
返回字符串
cost
返回多個參數? sorted()函數如何使用這些多個值?
key=operator.itemgetter(1)
是做什麼用的?這是排序的基礎,所以在這種情況下,多值返回cost
,它會使用值c
?
有沒有辦法在C#中做到這一點?
參見[排序的Mini-HOW TO(http://wiki.python.org/moin/ HowTo/Sorting /) – Abhijit
@Abhijit,是的,謝謝。我應該RTFM –
我不確定我想要完全複製該代碼。但基本上,itemgetter會從列表中獲得第二個(第1項),這裏用作排序關鍵字。所以它會從列表中排序第二項。 – Keith