2010-12-19 27 views
0

での作業は、私はそれを短くするために別のコマンドがあるかどうかを知りたいと思った:のpython ...番号

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

これは、私がその年は関係しているので、使用するコマンドです。

+8

このようなことは[Pythonチュートリアル](http://docs.python.org/tutorial/)で説明しています。これを読むことで、多くの時間と手間を省くことができます。 –

答えて

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

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); 

それとも、あなたが本当に文字列が必要な場合:私はあなたが、おそらく、論理的な比較を行うためにきれいになる

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

のようにこれを使用すると推測

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

をすなわち、

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