【发布时间】:2011-08-25 02:51:33
【问题描述】:
我想在 python 中打印出一个字符串。我不想这样做:
if isfemale_bit:
print 'F'
else:
print 'M'
我现在最好的是print ['M', 'F'][int(isfemale_bit)]?
有更好的选择吗?
我需要我的语法糖!!
【问题讨论】:
-
不,您需要尽可能清晰、最明显和最可维护的代码。为什么要模拟一个比混淆机制好一点的运算符?
-
我喜欢您的原始解决方案,但 ('M', 'F')[int(isfemale_bit)] 是最佳版本。您应该能够为像您这样的狡猾的解决方案表示赞赏。
-
@freegnu:错误;你应该每次都选择清晰而不是聪明的黑客。
-
也许您可以花一些时间来解释一下上述声明的哪些部分不清楚。它易于阅读并简洁地执行所需的操作,并且是有效的 Python。也许我读错了。我总是愿意学习新的东西。你愿意用一两个失败的例子来支持你的观点和权威立场吗?或者,也许你应该将你对简洁代码的讨伐作为黑客的巫术,去 perl 部分,那里有更多的燃料。
标签: python