2017-02-19 9 views
0

입력 코드 (예 : 1)와 출력 코드가 하나 인 코드를 작성했습니다.2 번 텍스트 - 음수 번호 버그

하지만 음수에 도착했을 때 모든 것이 잘못 ...

numbers = "zero one two three four five six seven eight nine".split() 
numbers.extend("ten eleven twelve thirteen fourteen fifteen 
sixteen".split()) 
numbers.extend("seventeen eighteen nineteen".split()) 
numbers.extend(tens if ones == "zero" else (tens + "-" + ones) 
    for tens in "twenty thirty forty fifty sixty seventy eighty  ninety".split() 
    for ones in numbers[0:10]) 


lol = int(raw_input ("Insert a number between 1 to 99! ")) 

while lol>=100: 
lol = int(raw_input ("Insert a number between 1 to 99! Not above 100!!!!!!! ")) 

    if lol <= -1: 
     print "minus" + " " + numbers[lol] 
else: 
print numbers[lol] 

을하지만 내가 쓴시 -7 내가 가진 마이너스 아흔세 ..

그것을 고칠 수있는 방법이 있습니까? !

답변

0

목록에서 음수를 사용하면 파이썬이 거꾸로 계산하기 때문입니다. 예
e=[1,2,3,4,5] e[-2] is equal to 4 math.abs()를 사용하면 절대 값으로 설정할 수 있습니다.

+0

방금 ​​"빼기"행을 "인쇄"에서 "+" "+ 숫자로 바꿨습니다. [0 - lol]' – Telep0rter

+0

@ Telep0rter -'-lol'을 사용할 수 없습니까? 또한''빼기 ''로 줄일 수 있습니다. – ryugie

+0

사실입니다. 나는 -1로 번식 할 수 있다고 생각조차하지 않았다. – Phonzi