2010-11-06 69 views
1

例如,我想要一個方法,根據傳遞的第一個參數,可以將int或char作爲第二個參數。在Python中可以使用整數或字符的方法處理參數的正確方法是什麼?

我認爲這樣做的方法是在它調用檢查第一個參數是什麼的方法之後有一個if(如果正確),那麼它可以是4.在這一點上,如果是這樣的話,請鍵入1或2這需要一個int作爲第二個參數,它完成了if中的代碼。然後我有一個elif檢查,如果第一個參數是類型3或4,那麼它進入該塊並完成該塊內的代碼。其他人會拋出異常或相應地處理問題。

這是正確的做法嗎?

+0

是的。 「簡單比複雜更好」 – jsbueno 2010-11-06 16:50:45

+0

獲得更多上下文可能會有所幫助,因此我們可以理解爲什麼您的代碼是以這種方式設計的。 – MatrixFrog 2010-11-06 16:51:17

+0

這是項目需要由教授工作的方式。 – Trim 2010-11-06 16:57:28

回答

1

如果內部代碼在兩種情況下都不相同,最好有兩種不同的方法。

0

如果代碼是相同的,通過參數的一些轉換(例如獲取char的ASCII值--btw,python中的char只是一個長度爲1的字符串),您應該在函數的開頭執行轉換,其餘的代碼應該是一樣的。例如:

def foo(a, b): 
    if a == 1: 
     b = ord(b) 
    # use b as if it is integer 

如果代碼的其餘部分是完全以不同的你sholud來寫不同的功能,而不是試圖擠在其中。

相關問題