2013-03-26 51 views
0

的問題是:編寫一個函數,需要3個參數,並打印出來,以便如何蟒紋,以便在功能3個參數

我是新來這個,所以我會感激簡單我能理解的功能。

例如:

>>> print_in_order(5,6,4) 
In order: 4, 5, 6 

我寫道:

def print_in_order(x,y,z): 
    print "in order: ", sorted([x,y,z]) 

然後我打電話:

print_in_order(5,6,4) 

但結果是

In order: [4,5,6] 

我想取掉方括號,但仍然無法解決問題。

+5

聽起來像一個非常艱難的家庭作業......你有沒有使用Google排序嗎? – 2013-03-26 05:46:42

+0

yip我做了男人,嘗試了YouTube,當然,在這裏。 – user2210265 2013-03-26 05:49:08

+0

@jamylak這實際上是一個擴展練習,我完成了標準的「家庭作業」,我一直在嘗試過去的小時,所以非常感謝你讓我成爲一個懶惰的屁股...... – user2210265 2013-03-26 05:56:33

回答

1

好了,因爲你已經證明你其實沒嘗試,我收回我說過:

def print_in_order(x,y,z): 
    print "in order: " + ", ".join(map(str, sorted([x,y,z]))) 

擴展這一點,如果你想支持任意數量的參數,你可以使用這個:

def print_in_order(*args): 
    print "in order: " + ", ".join(map(str, sorted(args))) 
+0

感謝您的幫助,但出現類型錯誤 TypeError:序列項目0:期望的字符串,發現的int – user2210265 2013-03-26 06:16:07

+1

@ user2210265'.join(map(str,sorted([x,y,z])))' – halex 2013-03-26 06:24:46

+0

@halex oops我的壞,謝謝 – jamylak 2013-03-26 06:56:26

0
def print_in_order(x,y,z): 
    print "in order: %d, %d, %d" % tuple(sorted([x,y,z]))