Pythontr

husonet | Tarih: 14.02.2011

python tarih işlemleri

Örneklerle python tarih işlemleri

python tarih işlemleri

#!/usr/bin/python
# -*- coding: utf-8 -*-

#-----------------------------------------------------------------------------
# Python Tarih İşlemleri İçin Örneklerdir
#-----------------------------------------------------------------------------

from datetime import datetime
import time

#-----------------------------------------------------------------------------
# String dönüşümleri
#-----------------------------------------------------------------------------
# datetime nesnesinden stringe
dateobj = datetime(2011, 02, 13, 22, 50, 00)
datestr = dateobj.strftime("%d-%m-%Y %H:%M:%S")
print datestr

# time tupledan stringe
timetuple = (2011, 02, 13, 22, 50, 00, 2, 317, 0)
datestr = time.strftime("%d-%m-%Y %H:%M:%S", timetuple)
print datestr

#-----------------------------------------------------------------------------
# datetime dönüşümleri
#-----------------------------------------------------------------------------
# time tupledan datetime nesnesine
timetuple = (2011, 02, 13, 22, 50, 18, 2, 317, 0)
dateobj = datetime(*timetuple[0:6])
print repr(dateobj)

# string olarak işlenmiş tarih verisinden datetime nesnesine
datestr = "2011-02-13 22:50:51"
dateobj = datetime.strptime(datestr, "%Y-%m-%d %H:%M:%S")
print repr(dateobj)

# timestamp dan datetime nesnesine local zamanda
timestamp = 1124527167.595983
dateobj = datetime.fromtimestamp(timestamp)
print repr(dateobj)

# timestamp dan datetime nesnesine UTC zaman diliminde
timestamp = 1124527177.595983
dateobj = datetime.utcfromtimestamp(timestamp)
print repr(dateobj)


#-----------------------------------------------------------------------------
# zaman (time) tuples dönüşümleri
#-----------------------------------------------------------------------------
# datetime nesnesinden zaman (time) tuple
dateobj = datetime(2011, 02, 13, 22, 50, 50)
timetuple = dateobj.timetuple()
print repr(timetuple)

# string den time tuple
datestr = "2011-02-13 23:06:19"
timetuple = time.strptime(datestr, "%Y-%m-%d %H:%M:%S")
print repr(timetuple)

# timestamp dan time tuple UTC zaman diliminde
timestamp = 1226727167.595983
timetuple = time.gmtime(timestamp)
print repr(timetuple)

# timestamp dan time tuple local time zaman diliminde
timestamp = 1226527167.595983
timetuple = time.localtime(timestamp)
print repr(timetuple)


Çıktımız aşağıdaki gibi olacaktır.
13-02-2011 22:50:00
13-02-2011 22:50:00
datetime.datetime(2011, 2, 13, 22, 50, 18)
datetime.datetime(2011, 2, 13, 22, 50, 51)
datetime.datetime(2005, 8, 20, 11, 39, 27, 595983)
datetime.datetime(2005, 8, 20, 8, 39, 37, 595983)
time.struct_time(tm_year=2011, tm_mon=2, tm_mday=13, tm_hour=22, tm_min=50, tm_sec=50, tm_wday=6, tm_yday=44, tm_isdst=-1)
time.struct_time(tm_year=2011, tm_mon=2, tm_mday=13, tm_hour=23, tm_min=6, tm_sec=19, tm_wday=6, tm_yday=44, tm_isdst=-1)
time.struct_time(tm_year=2008, tm_mon=11, tm_mday=15, tm_hour=5, tm_min=32, tm_sec=47, tm_wday=5, tm_yday=320, tm_isdst=0)
time.struct_time(tm_year=2008, tm_mon=11, tm_mday=12, tm_hour=23, tm_min=59, tm_sec=27, tm_wday=2, tm_yday=317, tm_isdst=0)
1297631503.0


Timezone göre tarih üzerinden saati belirleme
nt = '2022-09-12 12:49:41+00:00'
tt = datetime.strptime(nt, "%Y-%m-%d %H:%M:%S%z")
ta = tt.astimezone(timezone(timedelta(hours=-4)))
ta.strftime('%Y-%m-%d %H:%M')

Out[122]: '2022-09-12 08:49'