让我们说我有一个这样的短循环:
for i in range(10):
print "Hello"
如果可能的话,我可以将它放在一行上吗?
答案 0 :(得分:4)
如果可能的话,我可以将它放在一行上吗?
你可以将它放在一行:
for i in range(10): print "Hello"
但这对你没有多大意义,违背惯例。当没有理由(readability counts!)时,你不应该试图把很多东西塞进一条线上。
顺便说一句,通常_
用作循环控制变量,当它在循环体中永远不需要时:
for _ in range(10):
print "Hello"
答案 1 :(得分:1)
只需将声明放在:
之后。
for i in range(10): print "Hello"
答案 2 :(得分:1)
map
(您将其标记为Python 2.7,因此我们最初没有打印功能)
假设你想对列表中的每个元素应用一个函数,map
将会循环。
>>> from __future__ import print_function
>>> lst = ["a", "b", "c"]
现在我将print
定义为一个函数并让列表循环:
>>> map(print, lst)
a
b
c
[None, None, None]
打印时[None, None, None] is list of results, which is
无。返回列表需要花费一些时间。根据结果的进一步使用,它可能是小优点或缺点。
请注意,在Python 3中,map
的行为略有不同,它返回特殊类型的map
类型的结果,必须强制迭代,例如进入list
电话。但这不在你的问题范围内。