Python menyediakan paket yang berbeda ( datetime
, time
, calendar
) seperti dapat dilihat di sini dalam rangka untuk berurusan dengan waktu. Saya membuat kesalahan besar dengan menggunakan yang berikut untuk mendapatkan waktu GMT saat initime.mktime(datetime.datetime.utcnow().timetuple())
Apa cara sederhana untuk mendapatkan waktu GMT saat ini di cap waktu Unix?
python
time
unix-timestamp
Cory
sumber
sumber
datetime.utcnow()
mengembalikan waktu UTC saat ini sebagai objek datetime (Saya berasumsi Anda ingin UTC ketika Anda berbicara tentang "waktu GMT").time.time()
mengembalikan cap waktu Unix langsung sebagai nomor float. Berikut ini cara mengonversi datetime.date/datetime.datetime mewakili waktu dalam UTC ke timestamp POSIX .Jawaban:
Saya akan menggunakan time.time () untuk mendapatkan cap waktu dalam detik sejak zaman.
Keluaran:
Untuk implementasi CPython standar pada kebanyakan platform, ini akan mengembalikan nilai UTC.
sumber
Keluaran:
sumber
Apakah ini membantu?
Bagaimana mengkonversi objek datetime Python UTC ke cap waktu UNIX
sumber
time.time()
dan tidak perlu konversi datetime sama sekali.Atau hanya cukup menggunakan modul standar datetime
Anda dapat memotong atau memperbanyak tergantung pada resolusi yang Anda inginkan. Contoh ini menghasilkan milis.
Jika Anda ingin cap waktu Unix yang tepat (dalam detik) hapus
* 1000
sumber
moment
perpustakaan Javascriptmoment().utc().valueOf()
. Persis apa yang saya cari. Terima kasihpython2 dan python3
itu baik untuk menggunakan modul waktu
Anda juga dapat menggunakan modul datetime, tetapi saat Anda menggunakan strftime ('% s'), tetapi strftime mengonversi waktu menjadi waktu lokal Anda!
python2
python3
sumber
time.time()
dandatetime.utcnow().timestamp()
jangan tidak memberikan nilai yang sama!Saya suka metode ini:
Metode lain yang diposting di sini tidak dijamin memberi Anda UTC di semua platform atau hanya melaporkan seluruh detik. Jika Anda menginginkan resolusi penuh, ini berfungsi, untuk micro-detik.
sumber
utctimetuple
bukan melakukan triknya sekalipun.Keluaran:
sumber
time.time()
untuk saya.dt.utcnow
mengembalikandatetime
informasi tanpa zona waktu. Kemudianstrftime
berasumsi bahwadatetime
ini adalah waktu setempat.sumber
Setidaknya dalam python3, ini berfungsi:
sumber