Я работаю над этим кодом Python для преобразования по Фаренгейту в цель и второго кода, который преобразует Цельсию в Фаренгейт. Я написал каждый код так же, используя (if/else), но всякий раз, когда я пытаюсь сделать первое условие истинным. Например, когда температура F = -400, я получаю ошибку NameError: name 'C' is not defined
.NameError: имя 'C' не определено` error Converting Temperature
Я попытался изменить положение линии для C, чтобы он работал до последней строки печати. Но до сих пор не повезло. Вторая часть кода, которая преобразует C в F, запускается без этой ошибки. Я попытался поместить уравнение для C после последней строки печати, но по-прежнему ту же ошибку.
Это что-то, что я могу потерять в первой части, которая может помешать мне сделать первое условие истинным?
Я бегу на Python 2.7.10 и с помощью терминала на Mac OS X El Capitan (10,11)
Преобразование Фаренгейта в градусы Цельсия:
F = int(raw_input("Enter Temperature In Fahrenheit:"))
if F >= (-459.67):
print "Temperature in absolute zero cannot be achieved"
else:
C = F - 32 * (0.555556)
print "The temperature is %.1f" 'C' % C
Преобразовать Цельсия в градусы Фаренгейта:
C = int(raw_input("Enter Temperature In Celsius:"))
if C <= (-273.15):
print "Temperature in absolute zero cannot be achieved"
else:
print "The temperature is %.1f" 'F' % F
F = C * (1.8) + 32
'if F> = -459.67' то' C' не определен. –
Вы можете поднять ошибку, когда задан плохой ввод. Например: 'raise ValueError (« Температура в абсолютном нуле не может быть достигнута »). – Evert
Обратите внимание, что 1/вы конвертируете в целое число' F = int (... ', но вы сравниваете значения с плавающей запятой в в следующей строке и 2/вы сравниваете значение Fahrenheit * выше * -459.67, чтобы считать входное значение неверным (но вы делаете это правильно при сравнении 'C <= -273.15'. (И нет, t нужны скобки вокруг этих значений float. Я не знаю, почему вы так думаете.) – Evert