【发布时间】:2016-03-01 18:12:15
【问题描述】:
考虑下面的代码
', '.join(['{} <{}> ({})'.format(user.nickname, user.email, user.employee_id)
for user in referrers])
现在,当employee_id 不存在时,我想跳过() 并留空。
referrer_strs = []
for user in referrers:
if user.employee_id is None:
referrer_strs.append('{} <{}>'.format(user.nickname, user.email))
else:
referrer_strs.append('{} <{}> ({})'.format(user.nickname, user.email, user.employee_id))
return ', '.join(referrer_strs)
我可以将其转换为用于理解,但有没有更 Pythonic 的方式来做到这一点?
【问题讨论】:
-
这段代码看起来不错。它是可读的。不要改变它。
-
我知道它是可读的,但我想知道是否有一些字符串格式的魔法,例如'{} {? ()}'
-
试试这个pyformat.info。也许你发现了什么。但我不这么认为。