2016-08-18 22 views
0
balance = 50 - 0.12 * 15 
tracks_left = balance/0.12 
round (tracks_left, 0) 
print 'you have', tracks_left,"to download" 

用タイプ(int)を強制しようとしている答えは、私がround(tracks_left, 0)int (tracks_left)試したyou have 401.666666667 to download です。 私は何が間違っていますか?コーディングとPythonの新機能フロート答え

答えて

2

round(tracks_left, 0)は、tracks_leftを変更せず、代わりに新しい値を返します。同様にint(tracks_left)と同じです。

試してみてください。

tracks_left = round(tracks_left, 0) 

または:

tracks_left = int(tracks_left) 

注:intは常に切り捨て。

1

round(tracks_left, 0)tracks_leftは変更されません。値を返すだけです。あなたはそれを何かに割り当てる必要があります。

あなたにもこれを行うことができます
>>> balance = 50 - 0.12 * 15 
>>> tracks_left = balance/0.12 
>>> tracks_left_rounded = round(tracks_left, 0) 
>>> print('You have', tracks_left_rounded) 
You have 402.0 

>>> balance = 50 - 0.12 * 15 
>>> tracks_left = round(balance/0.12) 

またintを試すことができます。

>>> tracks_left_rounded = int(tracks_left) 
>>> print('You have', tracks_left_rounded) 
You have 401 

私はそれが役に立てば幸い!

+0

これは素晴らしいことでした!美しく働いて、私はちょうど何かを理解しました。変数に新しい値を代入する前に、それを参照することができます。これは私が間違っていたことです。どうもありがとう。 – amiacoda

関連する問題