Python - unix_time'ları Nasıl Dönüştürebilirim?

Merhaba, python da unix_time olan değerleri dönüştürmek istiyorum. Bunu nasıl yapabilirim?

Örnek değerler >> 1595574043000 - 1595574119000 - 1595574172000 - 1595574231000 - 1595574262000

Merhaba,

Sayıları doğru yazdığınızdan emin misiniz?

Yani 1595574043000, 1595574043 olmasın sakın?

>>> from datetime import datetime as dt
>>>
>>> dt.fromtimestamp(1595574043)
datetime.datetime(2020, 7, 24, 10, 0, 43)
>>>
>>> dt.fromtimestamp(15955740430)
datetime.datetime(2475, 8, 14, 1, 7, 10)
>>>
>>> dt.fromtimestamp(159557404300)
datetime.datetime(7026, 3, 5, 8, 11, 40)

çektiğim verinin geliş şeklinde yazdım. sondaki sıfırlar zaman dilimini belirliyormuş. gt+3 tarzı şeyler.

bunu kullanmak için bir değişkene atayıp .year .month .hour gibi kullanacağım dimi bunun dışında başka bir kullanım şekli var mı?

Bir string şeklinde almak istiyorsanız strftime fonksiyonunu da kullanabilirsiniz.

>>> from datetime import datetime as dt
>>> 
>>> dt.fromtimestamp(1595574043).strftime("%Y.%m.%d")
'2020.07.24'

Yıl, ay, gün, saat, dakika, saniye niteliklerinden hangisine ihtiyacınız varsa nitelik ismini de kullanabilirsiniz.

>>> dt.fromtimestamp(1595574043).year
2020
1 Beğeni

bu daha iyiymiş ama benim tarihe ek olarak bir de saat ve dakika kısmına ihtiyacım var.

dt.fromtimestamp(1595574043).strftime("%Y.%m.%d-%h.%m")

olarak denedim ama saat dakika kısmını çekemedim

dt.fromtimestamp(1595574043).strftime("%Y.%m.%d %X")

veya

dt.fromtimestamp(1595574043).strftime("%Y.%m.%d %H:%M:%S")
1 Beğeni

çoooooook teşekkür ederim

Rica ederim kolay gelsin.

Sanmiyorum; saniye yerine milisaniye belirtiyor olmasi daha yuksek ihtimal. UNIX timestamp’ler an belirttikleri icin (saat belirtmedikleri icin?) timezone’lari yok.

asıl nokta bu sanırım.

dönüştürünce saat de geliyor ?

Tarih + saate donusturunce saat gelmesi normal :slight_smile:

1 Beğeni