嗨,我在使用中断功能时遇到错误

问题描述

我的代码:

import math
import sys
 
def addition():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one + two)

def Subtraction():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one - two)

def Multiplication():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one * two)


def Division():
    one = int(input('What is your first number? '))
    two = int(input('What is your first number? '))
    print(one / two)
    
def Modulo():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one % two)

calc_run = True
while calc_run == True:
    def calc_run():
        op = input('Do you want to add,subtract,multiply,divide,modulo or quit. ')
        if op == 'add':
            addition()
        elif op == 'subtract':
            Subtraction() 
        elif op == 'multiply':
            Multiplication() 
        elif op == 'divide':
            Division()
        elif op == 'modulo':
            Modulo()   
        elif op == 'quit':    
            print("Thanks for using this app")
            sys.exit
            break    
    calc_run()

错误:

'break' outside loop

该代码在我尝试执行此操作时有效:

import math
import sys
 
def addition():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one + two)

def Subtraction():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one - two)

def Multiplication():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one * two)


def Division():
    one = int(input('What is your first number? '))
    two = int(input('What is your first number? '))
    print(one / two)
    
def Modulo():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one % two)

calc_run = True
while True:
    def calc_run():
        op = input('Do you want to add,modulo or quit. ')
        if op == 'add':
            addition()
        elif op == 'subtract':
            Subtraction() 
        elif op == 'multiply':
            Multiplication() 
        elif op == 'divide':
            Division()
        elif op == 'modulo':
            Modulo()   
        elif op == 'quit':    
            print("Thanks for using this app")
            sys.exit
            calc_run = False
    calc_run()
  • 我使用Python 3.8 32bit

解决方法

这按预期工作。
在Python 2.7上进行了测试。

import math
import sys
 
def addition():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one + two)

def Subtraction():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one - two)

def Multiplication():
    one = int(input('What is your first number ? '))
    two = int(input('what is your second number? '))
    print(one * two)


def Division():
    one = int(input('What is your first number? '))
    two = int(input('What is your first number? '))
    print(one / two)
    
def Modulo():
    one = int(input('What is your first number? '))
    two = int(input('what is your second number? '))
    print(one % two)

calc_run = True
while calc_run == True:
    op = raw_input('Do you want to add,subtract,multiply,divide,modulo or quit. ')
    if op == 'add':
        addition()
    elif op == 'subtract':
        Subtraction() 
    elif op == 'multiply':
        Multiplication() 
    elif op == 'divide':
        Division()
    elif op == 'modulo':
        Modulo()   
    elif op == 'quit':    
        print("Thanks for using this app")
        #sys.exit
        break

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...