Pythonがfloatをintにキャストしない理由を理解するのに少し問題があります。以下はコード スニペットです。
import time
now = time.time()
print type(now)
int(now)
print type(now)
そして、これが私が得た結果です。理由はよくわかりません。何か案は?前もって感謝します
<type 'float'>
<type 'float'>
now
次のように再割り当てする必要があります。
now = int(now)
int()
変換はその場で動作しません。変換の結果を返すだけなので、新しい値に再割り当てする必要がありますnow
。
原則として、関数は新しい値を返しますが、メソッドはその場で動作します。関数とメソッドの違いについては、この質問を参照してください。
int()
その場で動作しません。あなたはまだ上書きする必要がありますnow
:
now = int(now)
私はそれを一度にすべてやりますが:
now = int(time.time())
int バージョンに設定したことはありません
import time
now = time.time()
print type(now)
now = int(now) # set now to int version
print type(now)