【发布时间】:2010-11-05 07:05:30
【问题描述】:
执行以下操作最惯用的方法是什么?
def xstr(s):
if s is None:
return ''
else:
return s
s = xstr(a) + xstr(b)
更新:我正在采纳 Trypich 的使用 str(s) 的建议,这使得该例程适用于字符串以外的其他类型。我对 Vinay Sajip 的 lambda 建议印象深刻,但我想让我的代码保持相对简单。
def xstr(s):
if s is None:
return ''
else:
return str(s)
【问题讨论】:
-
我喜欢你原来的语法。我认为它已经相当清晰易读了。
-
@GuiSim:我可能有偏见,但我的回答读起来几乎就像一个普通的英语句子......
-
"如果 s 为 None,则返回一个空字符串;否则,返回 [string of] s。"问题中的代码读起来也像正常的英语句子。
-
a) 如果字符串
s来自未找到密钥的字典查找,则使用dict.get(key, '') -
b) 如果您只希望此字符串转换用于输出格式(例如打印),那么您可以直接执行 '... {}'.format(dict.get(1))`