这是我想要做的事情:
这个的第二种方法是:
有没有其他更好的方法来做类似这样的事情?目前我选择第一种方式,因为获取问候语字符串的处理本身就是一个函数并且在使用第三种方法时会让行超过80个字符。
- 获取几个参数
- 根据这些参数组成一个字符串
- 返回该字符串
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个字符。
编辑:似乎有人困惑我在问哪种方法更好(因为他们认为这是基于意见的)。在这里,我试图找到是否有更好的方法,并且给出了我能想到的东西的例子,以便别人不会把它们作为答案。正如其中一个答案所提到的,我发现在类似情况下使用字典对我更好。
greetings
。第二个更易读,但逻辑更复杂,你可能会忘记在最后一个语句中设置greetings
的值而导致未定义变量错误。我最喜欢的是最后一个,它既安全,又易读,而且很短。 - Jan Vlcinsky