2013-11-18 18 views
6

私は単純な例外処理を記述しようとしています。しかし、私は何か間違っているようです。'ValueError'以外の無効な構文エラーを修正するにはどうすればよいですか?

def average(): 
    TOTAL_VALUE = 0 
    FILE = open("Numbers.txt", 'r') 

    for line in FILE: 
     AMOUNT = float(line) 
     TOTAL_VALUE += AMOUNT 
     NUMBERS_AVERAGE = TOTAL_VALUE/AMOUNT 
    print("the average of the numbers in 'Numbers.txt' is :", 
     format(NUMBERS_AVERAGE, '.2f')) 

    FILE.close() 

    except ValueError,IOError as err: 
     print(err) 

average() 

> line 14 
>   except ValueError as err: 
>   ^
>  SyntaxError: invalid syntax 
+1

表示されるコードと例外は、お互いに不安です。お手伝いできるようにするには、* actual *コードと* actual *例外を参照する必要があります。近似ではありません。 – NPE

+0

定数以外の大文字は使用しないでください。あなたが使用する変数のどれも定数ではありません。 –

+0

これは実際のコードと実際の例外です。 –

答えて

7

ここでは2つの問題があります。まず、あなたがエラーを囲む括弧が必要になります。

except (ValueError,IOError) as err: 

第二に、あなたはそのexceptラインで行くことにtryが必要:

def average(): 
    try: 
     TOTAL_VALUE = 0 
     FILE = open("Numbers.txt", 'r') 

     for line in FILE: 
      AMOUNT = float(line) 
      TOTAL_VALUE += AMOUNT 
      NUMBERS_AVERAGE = TOTAL_VALUE/AMOUNT 
     print("the average of the numbers in 'Numbers.txt' is :", 
      format(NUMBERS_AVERAGE, '.2f')) 

     FILE.close() 

    except (ValueError,IOError) as err: 
     print(err) 

excepttryせずに使用することはできません。

+0

ありがとう、それは働いた! –

関連する問題