2013-12-18 33 views
0

我需要用户输入1-10并打印出罗马数字。所以如果他们输入5我需要打印'V'。根据用户输入从列表中打印值

test = int(input("Enter in a number '1-10' ")) 
roman = ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X"] 
if test in range(1, 10): 
    for i in range(len(roman)): 
     print(test, roman[i]) 

是我有,但它不是像我想要的那样工作。这就是它吐出来的。 输入一个数字 '1-10' 5

5 I 
5 II 
5 III 
5 IV 
5 V 
5 VI 
5 VII 
5 VIII 
5 IX 
5 X 
>>> 
+1

参见:[古罗马](HTTPS://pypi.python .org/pypi/roman /)在pypi上。 – poke

+0

罗马= [“nulla”,“I”,“II”,“III”,“IV”,“V”,“VI”,“VII”,“VIII”,“IX”,“X” ]'?然后,你可以使用'罗马[测试]' –

回答

2

一种方式开始做吧:

test = int(input("Enter in a number '1-10' ")) 
roman = ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X"] 
if 0 < test <= 10: 
    i = roman[test-1] 
    print(test, i) 
3

无需循环。

print test, roman[test - 1] 

-1是因为数组从0开始,并从"I"

+0

谢谢,我是一个白痴没有看到,大声笑 –

相关问题