0

Pythonがfloatをintにキャストしない理由を理解するのに少し問題があります。以下はコード スニペットです。

import time

now = time.time()
print type(now)
int(now)
print type(now)

そして、これが私が得た結果です。理由はよくわかりません。何か案は?前もって感謝します

<type 'float'>
<type 'float'>
4

3 に答える 3

8

now次のように再割り当てする必要があります。

now = int(now)

int()変換はその場で動作しません。変換の結果を返すだけなので、新しい値に再割り当てする必要がありますnow

原則として、関数は新しい値を返しますが、メソッドはその場で動作します。関数とメソッドの違いについては、この質問を参照してください。

于 2013-01-15T03:11:36.640 に答える
3

int()その場で動作しません。あなたはまだ上書きする必要がありますnow

now = int(now)

私はそれを一度にすべてやりますが:

now = int(time.time())
于 2013-01-15T03:11:09.673 に答える
3

int バージョンに設定したことはありません

import time
now = time.time()
print type(now)
now = int(now) # set now to int version
print type(now)
于 2013-01-15T03:12:08.093 に答える