2013-10-13 57 views
1

我正在使用Python 2.7。你如何使用引号内循环的索引?这出现在一个选项中。我曾尝试将指数放入quote()以及%之后。python 2.7循环索引引号

例如:

for i in range(1, 10): 
    parser.add_option('-l', '--location', value="i") 
+0

为什么你认为你需要引号呢? – kojiro

+1

你确定你需要一个字符串吗?它看起来好像'价值'可以简单地是整数值。如果不是,那么'value = str(i)'也应该起作用。在某些情况下,您需要在字符串文字中执行变量插值,并且有办法执行此操作(请参阅发布的答案),但这不是其中之一。 – chepner

+0

这只是一个玩具的例子。值肯定是一个字符串,因为我稍后将它连接到其他文本。 – user2876971

回答

2

使用format option字符串。

for i in range(1,10): 
    parser.add_option('-l', '--location', value="{0}".format(i)) 

要做到这样简单的东西,更好的方法是

for i in range(1,10): 
    parser.add_option('-l', '--location', value=str(i)) 
+0

我只是将我原来的帖子改为我的实际问题。我想简化打印语句过于简化。 – user2876971

+0

同样的方法适用于任何字符串,但有更好的方法来完成此操作。 –

1
for i in range(1,10): 
    print "This is the number {}".format(i) 
+2

在现代python代码中不鼓励使用'%'作为字符串格式:http://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting –

+0

@Mattbryant:对! TKS!更新了我的答案! – user278064

1

为什么不简单:

print "Number: %s" % 5 
+0

在现代Python代码中不鼓励使用'%':http://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting –

+0

@MattBryant是的,但同时每个Python程序员应该知道它。另外,我认为'printf'风格格式化对BDFL来说无处不在,它完全摆脱了这个世界。所以+1。 – kojiro