【发布时间】:2017-05-21 17:40:21
【问题描述】:
我是 python 新手,想编写一个程序,使用 python 在 1 行 中打印从 1 到 100(含)的整数,但是:
- 对于三的倍数,打印
shell(而不是数字) - 对于 5 的倍数,打印
fish(而不是数字) - 对于 3 和 5 的倍数,打印
shellfish(而不是数字)
不幸的是,我可以做到这一点,但不能用一行代码:
for i in xrange(1, 101):
if i % 15 == 0:
print "shellfish"
elif i % 3 == 0:
print "shell"
elif i % 5 == 0:
print "fish"
else:
print i
怎样才能把这段源码写成一行?
【问题讨论】:
-
如果你想在一行上写多个语句,你可以使用分号
;。所以理论上你可以在一行上写一个完整的程序。不过,如果单行代码会使程序更难阅读,请考虑不要使用它们。您当前拥有的内容比等效的单行代码更具可读性和更易理解。 -
这非常适合PPCG上的tips标签
-
您的问题含糊不清。您希望源代码在一行,还是脚本的输出在一行?
-
源代码。我知道如何让它打印在一行上我不是那么新:)
标签: python python-2.x