Неверный литерал для int () с Base 10 '' - PullRequest
0 голосов
/ 24 июня 2018

Итак, я попытался построить этот простой код, чтобы попытаться угадать число:

y = raw_input()
print type(y)
x = int('y')
print type(x)
if x > 0:
    print 'positive'
    if x > 10:
        print 'Greater than 10'
    else:
        print 'less than 10'

elif x == 0:
   print 'equals 0'

print 'Conditionals are over'
print 'Bye Bye'

Однако, запустив код в windows powershell, он отображает ошибку:

Value error in line 11, stating Invalid literal for int() with Base 10.

Что это значит и как это можно исправить?

Ответы [ 2 ]

0 голосов
/ 24 июня 2018
y=raw_input()
print type(y)
x=int(y) # < -- Do not pass y as string. 'y' ==> y
print type(x)
if x>0:
    print 'positive'
    if x>10:
        print 'Greater than 10'
    else:
        print 'less than 10'

elif x==0:
   print 'equals 0'

print 'Conditionals are over'
print 'Bye Bye'

Вы пытаетесь преобразовать char в int здесь, из-за чего Недопустимый литерал для int () с ошибкой Base 10 . Строки / символы могут быть преобразованы в int только тогда, когда .isdigit() равно True.

0 голосов
/ 24 июня 2018

Вы пытаетесь преобразовать символ y в int, а не в переменную с именем y в int

Замените x=int('y') на x=int(y) и повторите попытку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...