2015-04-27 5 views
0

Недавно я попытался сделать калькулятор в Python, но параметры, которые я пытаюсь сделать с помощью оператора if, не работают, если вы можете просить меня сказать, что не так, я был бы признателен, ниже приведен код. Да, я знаю, что есть опечатки, я просто был нуждаясь в помощи о том, почему это, если заявление не работает, потому что я использовал их раньше, и он работалЕсли заявление не работает на Python 2.7

#Calculator Testing in Pytho 2.7 

f == raw_input("""What function would you like to use? 
You can type Opt to see the options""" 

if f == "Opt": 
    print 
    """You can choose from the following options when at the 
    function selection screen; 
    Type /Add for Addition 
    Type /Sub for Subtraction 
    Type /Div for Division 
    Type /Multi for Multiplication 

    Type /menu to go back to the function selection screen 
    or 
    Type /quit any time to end the program""" 

if f == "no": 
    print "test" 



funcopt = raw_input("What would you to do?") 

if funcopt == "/quit": 
    print "test" 
+2

Объясните, что вы подразумеваете под «нерабочим» – Abhijit

+2

Это ваш фактический код? Потому что 'f == raw_input (...)' Не собирается делать то, что вы хотите. Как вы используете этот код? Интернет-переводчик? локальная среда IDE? Запуск файла .py из командной строки? вклеивание в REPL? – Kevin

+1

В вашем примере кода есть пара ошибок. 'f == raw_input()' будет выполнять тест, и вы ничего не сможете сохранить результат теста. Кроме того, ваш 'raw_input (...' call не имеет закрывающего ')' - я предполагаю, что это опечатка, или вы даже не дойдете до запуска скрипта. – pcurry

ответ

7

Ваши if заявление работы. Это ваше print заявление, что не работает:

print 
"""You can choose from the following options when at the 
function selection screen; 
Type /Add for Addition 
Type /Sub for Subtraction 
Type /Div for Division 
Type /Multi for Multiplication 

Type /menu to go back to the function selection screen 
or 
Type /quit any time to end the program""" 

Это определение строка является отдельной строкой в ​​целом и игнорируется Python. Python просто печатает пустую строку.

Запустите строку на одной и той же линии, по крайней мере:

print """You can choose from the following options when at the 
function selection screen; 
Type /Add for Addition 
Type /Sub for Subtraction 
Type /Div for Division 
Type /Multi for Multiplication 

Type /menu to go back to the function selection screen 
or 
Type /quit any time to end the program""" 
+0

Спасибо за быстрый ответ! оно работает! –

+1

Или, если аскер женился на своем существующем форматировании, они могут открыть скобку в той же строке, что и печать, а затем закрыть ее после строки. – SuperBiasedMan

0

У вас есть некоторые ошибки синтаксиса кода торможения есть. Непроверенная, но попробуйте это:

f = raw_input("""What function would you like to use? 
You can type Opt to see the options""") 

if f == "Opt": 
    print """You can choose from the following options when at the 
    function selection screen; 
    Type /Add for Addition 
    Type /Sub for Subtraction 
    Type /Div for Division 
    Type /Multi for Multiplication 

    Type /menu to go back to the function selection screen 
    or 
    Type /quit any time to end the program""" 

if f == "no": 
    print "test" 

funcopt = raw_input("What would you to do?") 

if funcopt == "/quit": 
    print "test" 

= присваивает значение переменной, == сравнивает значения. This может быть полезно

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