2016-06-17 10 views
-3

これは私の最初の質問stackoverflowです。 私はPythonのOCWオンラインクラスで問題を解決しようとしています。コードをデバッグする方法がわかりません。私はIDLEとPython 2.7で作業しています。私はそれを実行すると、私はちょうどprint関数の最初の行の後に赤のハイライトとメッセージエラー「予期しない文字列の後に継続文字」を持っているPythonで改行を行う方法は?

balance = float(raw_input("Enter the outstanding balance on your credit card: ")) 
annual_itst = float(raw_input("Enter the annual credit card interest rate as a decimal: ")) 
min_paymt_rate = float(raw_input("Enter the minimum monthly payment rate as a decimal: ")) 

remaining_balance = balance 

for i in range(1,13): 
    min_monthly_paymt=min_paymt_rate*remaining_balance 
    inst_paid = (annual_itst/12.0)*remaining_balance 
    pcpl_paid = min_monthly_pamt - inst_paid 
    remaining_balance -= pcpl_paid 

print("Month: " & i, \n "Minimum monthly payment: " & "$" & round(min_monthly_paymt, 2), \n "Principle paid: " & "$" & round(pcpl_paid, 2), 
     \n "Remaining balance: " & "$" & round(remaining_balance, 2)) 

は、ここに私のコードです。 ありがとうございます!

+2

次のいずれかを行うことができます。1.複数の「印刷」を使用する。各印刷は別々の行に表示されます。または2.文字列**の中に '\ n' **を入れます。 – jonrsharpe

答えて

0

ここでは、 は、事業者やあなたが連結のための文字列にint型を変換する必要があり、あなたは別のラインで印刷するために別々にそれぞれの行を印刷することができ、出力

balance = float(raw_input("Enter the outstanding balance on your credit card: ")) 
annual_itst = float(raw_input("Enter the annual credit card interest rate as a decimal: ")) 
min_paymt_rate = float(raw_input("Enter the minimum monthly payment rate as a decimal: ")) 

remaining_balance = balance 

for i in range(1,13): 
    min_monthly_paymt=min_paymt_rate*remaining_balance 
    inst_paid = (annual_itst/12.0)*remaining_balance 
    pcpl_paid = min_monthly_paymt - inst_paid 
    remaining_balance -= pcpl_paid 
print "\n\n\n" 
print "Month: {}".format(i), '\n',"Minimum monthly payment: $ {}".format(round(min_monthly_paymt, 2)), '\n',"Principle paid:$ ".format(round(pcpl_paid, 2)),'\n',"Remaining balance: $".format(round(remaining_balance, 2)) 
0

改行を印刷するには、改行を含む文字列を使用してください。"\n"

複雑な文字列を必要に応じて印刷するには、複数のprint文(通常は独自の改行が追加されます)を使用するか、文字列を組み立てて印刷します。

print("Month:", i) 
print("Minimum monthly payment: $" + round(min_monthly_paymt, 2)) 
(etc.) 

あなたは長い文字列ではなく文字列とint型に一緒に文字列を追加することができます。そのためには、数値を文字列に変換するか、文の書式設定について学ぶ必要があります。文字列へ

数:

print "Month: "+str(i) 

文字列フォーマット:

report = """Month: %d 
Minimum monthly payment: $%.2f 
Principal paid: $%.2f 
Remaining balance: %.2f""" 

print report % (i, min_monthly_paymt, pcpl_paid, remaining_balance) 

これらのメソッドのすべての上に読みます。それらは異なる状況において有用である。

0

を印刷する書式設定について学ぶ、です。

balance = float(raw_input("Enter the outstanding balance on your credit card: ")) 
annual_itst = float(raw_input("Enter the annual credit card interest rate as a decimal: ")) 
min_paymt_rate = float(raw_input("Enter the minimum monthly payment rate as a decimal: ")) 

remaining_balance = balance 

for i in range(1,13): 
    min_monthly_paymt=min_paymt_rate*remaining_balance 
    inst_paid = (annual_itst/12.0)*remaining_balance 
    pcpl_paid = min_monthly_paymt - inst_paid 
    remaining_balance -= pcpl_paid 

    print("Month: " + str(i)) 
    print("Minimum monthly payment: $" +str(round(min_monthly_paymt, 2))) 
    print("Principle paid: $" + str(round(pcpl_paid, 2))) 
    print("Remaining balance: $" + str(round(remaining_balance, 2))) 
関連する問題