2014-11-07 4 views
-6
n = raw_input('Enter a number to square') 

def square(n): 
    squared = n**2 
    print '%d squared is %d.' % (n, squared) 
    return squared 

square(n) 

Я не уверен, почему эта программа не будет работать.Почему моя программа python не работает?

+3

Откуда вы знаете, что оно не работает? Если есть сообщение об ошибке, вы должны добавить его в вопрос. Если он дает неправильный вывод, вы должны указать, что такое выход. – SethMMorton

+0

Вы должны вернуть значение переменной. – saruftw

+0

Какое сообщение об ошибке вы получаете? –

ответ

1

raw_input возвращает строку ... Вы не можете умиротворять строку (или поднять его на какой-либо власти по этому вопросу)

попробовать

def square(n): 
    n = int(n) #this will try to force it to be an integer instead of a string 
    ... 

print square(n) 

будьте осторожны, если пользователь вводит «привет» или что-то, хотя .. поскольку он не может преобразовать это в целое число

+0

Да ... Я думаю ... Я не думаю, что это относится к вопросу, однако, –

+0

, потому что он всегда дает строку функции ... __it - это ошибка, чтобы поднять строку на power__, нет ошибки в не печать возврата ... действительно, это просто что-то, что нужно для отладки –

Смежные вопросы