2010-12-19 101 views
0

我想知道是否有另一個命令把它縮短工作:蟒蛇...用數字

noes = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15'] 

這是我使用所以其具有年做的命令。

+8

這樣的事情在[Python教程](http://docs.python.org/tutorial/)中有介紹。讀這會節省你很多時間和麻煩。 – 2010-12-19 13:31:55

回答

1

noes = range(1, 16)

您可以使用map(str, range(1, 16)[str(i) for i in range(1, 16]來獲取字符串。

range

xrangerange類似,但沒有列出,但可以在for循環中使用。

[str(i) for i in xrange(1, 16)]

8

noes = map(str, range(1, 16))假設你真正想要的字符串。如果不是,那麼noes = range(1, 16)就足夠了。

+0

謝謝第一個工作:) – altin 2010-12-19 13:33:35

6

如果你是一個字符串列表後,您可以使用:

>>> x = [str(n) for n in range(1,16)] # or xrange if you wish 
>>> x 
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15'] 

號碼列表可以用下面的進行:

x = [n for n in range(1,16)] 
x = range(1,16) 
0

這不是數字。你引用了它們,所以它們是字符串。數字會

noes = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] 

而且短會

noes = range(1,16) 

我建議你讀一個Python教程。

0

使用

noes = range(1, 15); 

或者,如果你真的需要字符串:

noes = []; 
for i in range(1, 15): 
    noes.append(str(i)) 
0

我相信那你就用這個像

if AgeString in noes: 
    print "U R 2 yng!" 

它可能是更清潔做邏輯比較,即

if int(AgeStr) < 16: 
    print "Too young"