2016-12-05 9 views
-3

私はこのコードでPythonの識別問題を解決する方法を知りません。 この瞬間にすべてが投げ捨てられます。私はそれを実行します。pythonの字下げに問題があります

import math 

p = int(raw_input("Please enter deposit amount: \n")) 

i = int(raw_input("Please input interest rate: \n")) 

t = int(raw_input("Please insert number of years of the invesment: \n")) 

interest = raw_input("Do you want a simple or compound interest ? \n") 



A =p(1+r*t) 

B =p (1+r)^t 



if interest == "simple": 
print int(float(A)) 

elif interest == "compound": 
print int(float(B)) 
+1

挿入2/4/16のスペースでなければなりません。私はそれを実行すると –

答えて

2

Pythonでは、ブロックの終了位置を定義するためにブロック文を字下げする必要があります。言語の中には、中括弧({})やその他の記号を使用してブロックの先頭と末尾を区切るものがあります。しかし、Pythonでは、行の最後にコロン(:)があると、次の行がブロックの先頭であり、ブロックはコロンが置かれている行よりもインデントされていなければならず、ブロック内のすべての行がインデントされていなければなりませんまったく同じ量。コロンの付いた行の元のインデントレベルに戻った後続の行(または逆インデントされた(後退?))は、そのブロックの終わりを示します。

そう...

あなたifブロック(ifライン以下のコードの1行)ifライン自体よりもインデントされなければなりません。 elif行は、ifブロックの一部ではないためインデントされません。同様に、elifラインおよびelifブロックと同様です。

したがって、あなたの最後の4行の字下げ幅は次のようになります。ほとんどの言語で

if interest == "simple": 
    print int(float(A)) 
elif interest == "compound": 
    print int(float(B)) 

、インデントスタイルと読みやすくするためにすぎません。 Pythonでは、これも構文の一部です。あなたは、Python

if
if a == b: 
    print c 

を書くときの条件が真の場合

+0

それはバックライン13上でこのエラーを返しますコンソール – Duvall912

+0

が定義されていない名前は「r」: NameErrorで、 ファイル「」、13行目:@timotree トレースバック(最後の最新の呼び出し): – Duvall912

+0

それは別の質問です。 :-)しかし、あなたは 'A = p(1 + r * t)'を 'r'を含めどこでも定義しなくても評価しているようです(次の行にも)。 –

1

あなたifは、いくつかのコードを実行する必要があります。

すると、あなたの行動は把握していないこの場合、Pythonでifの条件

if a == b: 
print c 
print b 

に結びついているだけで一つのこと

if a == b: 
    print c 
    print b 

それは必ずしも明確ではありません以上にない場合いずれかの方法でprint bの場合a == bまたはprint bの場合のみ。 コードがわからないときは、コンピュータが好きではありません。

File "broken.py", line 2 
    print(c) 
     ^
IndentationError: expected an indented block 

しかし、明確にするためにできることがあります。この

if a == b: 
    print c 
print b 

今Pythonのような

は、それがインデントではないのでprint bがある場合の条件に縛られていないことを伝えることができます。

TLは、DR:あなたのプログラムの 最後の4行は、両方 `print`文の前に

if interest == "simple": 
    print int(float(A)) 
elif interest == "compound": 
    print int(float(B)) 
関連する問題