這就是我要做的:更Python的方式
- 找幾個參數
- 基礎上的論點,形成一個字符串
- 返回字符串
但是,爲此,我可以看到3種潛在的方式:
def form_statement(subject, verb, object):
greetings = ""
if subject in ("Paul", "Raj"):
greetings = "mister"
return "%s %s %s %s" % (subject, verb, object, greetings)
這樣做的第二個方法是:
def form_statement(subject, verb, object):
if subject in ("Paul", "Raj"):
greetings = "mister"
else:
greetings = ""
return "%s %s %s %s" % (subject, verb, object, greetings)
而第三種方式是:
def form_statement(subject, verb, object):
greetings = "mister" if subject in ("Paul", "Raj") else ""
return "%s %s %s %s" % (subject, verb, object, greetings)
是否有其他更好的辦法做這樣的事情?現在我選擇第一種方式,因爲獲得問候字符串的「處理」本身就是一個函數,並且使用第三種方法時,該行超過80個字符。
編輯:似乎有人困惑,我問的是哪一個更好用(因爲他們投這個意見爲基礎)。在這裏,我試圖找出是否有更好的方法去做,並舉例說明我可以考慮的事情,以便其他人可能不會給出答案。正如其中一個答案中提到的,我發現在類似的情況下使用字典對我來說更好。
所有的解決方案看起來不錯。首先是「安全」,因爲你總是對'問候'有一些價值。第二個是更容易閱讀,與更復雜的邏輯,你冷靜忘記設置值'問候',並得到未定義的變量錯誤在最後的聲明。最後一個我喜歡最安全,最易讀,最簡短的。 –