두 개의 다른 숫자로 작동하는 기본 계산기를 쓰고 있습니다. 지금까지는 작동하는 프로토 타입을 만들었지 만 그것을 나누고 실수하는 동안 여러 가지 문제가 발생하여 을 별도로 게시하고 있습니다.파이썬 계산기를 잠그는 것
사용자가 적합한 운영자를 제공하지 않을 경우 프로그램에서 질문을 반복하기를 원합니다.
def optn_query():
print("Hulk can different things with number!")
print("YOU!")
optn = input("What Hulk do with number?! ")
return optn
내가 입력이 정확한지 결정하기 위해 if 문을 사용하십니까 : 그건 내가 지금 가지고있는 코드입니까? (정상적으로 hulk_math라고 함) 다음 함수가 중간에 실패하지 않을 것이다, 그래서
또한 내가 거기에 OPTN를 돌려주는 듯했지만 여전히 수행합니다
Traceback (most recent call last):
File "hulc.py", line 57, in <module>
main()
File "hulc.py", line 13, in main
hulk_math()
File "hulc.py", line 41, in hulk_math
if optn == "+":
NameError: name 'optn' is not defined
나는이 문제를 해결하려면 어떻게해야합니까?
def hulk_math():
optn = optn_query()
#The rest of your code
또한, num1
및 num2
하지 않는 코드에 다른 곳에서 정의되어 그들이에 있도록 : 당신은 실제로 당신의 함수를 호출 할 필요가
def hulk_math():
if optn == "+":
result = num1 + num2
print("Hulk ADDS!!! Hulk thinks it's {0}!".format(result))
elif optn == "-":
result = num1 - num2
print("Hulk SUBTRACTS!!! Hulk thinks it's {0}!".format(result))
elif optn == "*":
result = num1 * num2
print("Hulk MULTIPLIES!!! Hulk thinks it's {0}!".format(result))
elif optn == "/":
result = num1/num2
print("Hulk DIVIDES!!! Hulk thinks it's {0}!".format(result))
main()
프로그램을 작성하기 전에 기본 사항을 배우고 이해하고 싶다면 'optn'이 올 것이라고 생각 했습니까? 또한 while 루프를 유용하게 사용할 수 있으며 리턴은 sys.exit이 필요없는 함수를 끝낼 수 있습니다. –