Aşağıdaki eğitimde, Epoch'un DateTime'a dönüştürülmesini anlayacağız. Python programlama dili bazı örnekler kullanarak. Epoch'u sırasıyla tarih ve saate dönüştürmek için Python Epoch'u kullanacağız. Ayrıca aşağıdaki konuları da ele alacağız:
- DateTime'ı çağ zamanına dönüştürme
- Epoch'u DateTime dizesine dönüştürme
- Epoch'u DateTime milisaniyesine dönüştürme
- Epoch'u DateTime saat dilimine dönüştürme
- Unix çağını DateTime'a dönüştürme
- DateTime'ı milisaniye cinsinden çağ zamanına dönüştürme
- Epoch zaman damgasını DateTime'a dönüştürme
- Python dönemi DateTime yılı aralık dışında
Ancak başlamadan önce Python'da epoch time'ı kısaca anlayalım.
Python'da dönem zamanı nedir?
Unix zamanı veya POSIX zamanı olarak da adlandırılan dönem zamanı, 1 Ocak 1970'de 12:00 UTC olan Unix çağından bu yana geçen çeşitli saniyeler halinde zamanı takip etmek için kullanılan bir çerçevedir. Bu çerçeve, çerçevelerin ve programlama lehçelerinin belirlenmesinde yaygın olarak kullanılır. Python dahil.
Python'da, zamanla ilgili değerleri kontrol etme yeteneği sağlayan time modülünü kullanarak yaş süresiyle çalışabiliriz. Yaş süresini yönetmeye yönelik temel yeteneklerden biri time.time()'dır; bu, çağdan bu yana saniye cinsinden devam eden süreyi kayan nokta sayısı olarak döndürür.
Python kullanarak çağ zamanını DateTime'a dönüştürme
Python'u kullanabiliriz tarihsaat.fromtimestamp() Çağ zamanını DateTime'a dönüştürmek için işlev. Python döneminin DateTime'a dönüştürülmesini gösteren aşağıdaki örneği ele alalım.
Örnek:
# Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 40246871 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time )
Çıktı:
Given epoch time: 40246871 Converted Datetime: 1971-04-12 01:11:11
Açıklama:
Yukarıdaki örnekte tarih ve saat değerlerinin kontrolü dikkate alınarak datetime modülü içe aktarılmıştır. Daha sonra epoch_time değişkeni, Unix çağından bu yana (1 Ocak 1970, 00:00:00 UTC) saniye cinsinden yaşanan kaymayı ele alarak 40246871 değerini dağıtıyor.
İçeriğin temel kullanışlılığı, datetime.fromtimestamp() özelliğinin kullanımında yatmaktadır. Bu yetenek bir miktar yatırım (epoch_time) gerektirir ve bir datetime nesnesi oluşturarak onu daha anlaşılır bir konfigürasyona dönüştürür. Aynı tarih ve saati adresleyen sonraki datetime nesnesi, date_time değişkenine yerleştirilir.
Değişikliğin algılanabilirliğini sağlamak için içerik iki print() bildirimi içerir. İlki, print('Given age time:', epoch_time), ilk yaş zaman değerini gösterirken, sonraki print('Converted Datetime:', date_time), tarihsaat üzerinden değişen değeri verir.
Python kullanarak DateTime'ı çağ zamanına dönüştürme
DateTime'ı çağ zamanına dönüştürmek için şunu kullanacağız: zaman damgası() işlev. Öncelikle DateTime'ın Epoch Time'a dönüştürülmesini gösteren aşağıdaki örneği ele alalım.
Örnek:
# Here, we are importing the datetime package import datetime # Here, we are using the timestamp() function to convert datetime into epoch time epoch_time = datetime.datetime(2021, 6, 9, 2, 0).timestamp() # Here, we are printing the values print('Converted epoch time:', epoch_time)
Çıktı:
Converted epoch time: 1623184200.0
Açıklama:
Yukarıdaki örnekte, tarih ve saatle ilgili faaliyetlerle ilgilenmek için datetime modülü içe aktarılmıştır. İçerik, timestamp() özelliğini kullanarak belirli bir tarih saatinin yaş saatine değişimini gösterir.
Etkileşim, 9 Haziran 2021 saat 02:00'ye yönelik bir tarihsaat nesnesinin oluşturulmasıyla başlar. Bu datetime nesnesi daha sonra timestamp() özelliğine bir çekişme olarak iletilir ve bu, aynı yaş zamanını (Unix çağından bu yana geçen saniye miktarı, 1 Ocak 1970, 00:00:00 UTC) döndürür. Sonraki yaş süresi, Epoch_time değişkeninde bir kenara bırakılır.
İçerik bir print() bildirimi ile tamamlanır: print('Converted age time:', epoch_time), bu, önceden tanımlanmış tarihsaat için belirlenen yaş süresini verir. Python kullanarak epoch time'ı DateTime dizgesine dönüştürme Epoch time'ı datetime dizgesine dönüştürmek için, epoch time'ı datetime'a dönüştürmemiz ve ardından elde edilen datetime değişkenini başarılı bir şekilde datetime dizgesine dönüştürmek için strftime() fonksiyonuna aktarmamız gerekir.
Örnek:
# Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 700024 # Here, we are using datetime.fromtimestamp() function to convert epoch time into datetime object mytimestamp = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using strftime() function to convert datetime_str = mytimestamp.strftime( '%Y - %m - %d %H : %M : %S') # Here, we are printing the values print('Given epoch time:', epoch_time) print('Converted datetime string:', datetime_str)
Çıktı:
Given epoch time: 700024 Converted datetime string: 1970 - 01 - 09 07 : 57 : 04
Açıklama:
Yukarıdaki örnekte yine içe aktardık. tarihsaat kütüphane. Daha sonra şunu kullandık: tarihsaat.fromtimestamp() Belirli bir Epoch zamanını tarih saatine dönüştürmek ve daha sonra onu iletmek için işlev strftime() datetime nesnesini bir datetime dizesine dönüştürme işlevi. strftime() işlev parametreleri, dizeyi özelleştirmek istediğimiz biçim kodlarıdır.
Python kullanarak çağ zamanını DateTime milisaniyesine dönüştürme
Epoch time'ın DateTime'a dönüştürülmesi için yaptığımız yöntemi kullanarak DateTime'ı epoch time'dan milisaniyelerle birlikte alabiliriz. Aynısını gösteren aşağıdaki örneği ele alalım.
Örnek:
# Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 402471.238201 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time )
Çıktı:
Given epoch time: 402471.238201 Converted Datetime: 1970-01-05 21:17:51.238201
Açıklama:
yoksa bash
Yukarıdaki örnekte, tarih ve saatle ilgili etkinliklerin işlenmesiyle çalışmak üzere datetime modülü içe aktarılmıştır. İçeriğin temel rolü, 402471.238201 saniye olarak belirlenen belirli bir yaş süresi boyunca, hem tarih saat nesnesini hem de organize bir dizeyi kullanarak anlaşılır bir konfigürasyona dönüşmektir.
İçerik, yaş süresini bir datetime nesnesine dönüştürmek için datetime.fromtimestamp() özelliğini kullanmak üzere geri döner. Date_time değişkeninde bir kenara bırakılan sonraki datetime nesnesi, tarih ve saat karşılaştırmasının inceliklerini örneklendirir. Sonunda içerik hem ilk yaş saatini hem de değiştirilen tarihsaat nesnesini yazdırır.
Bu print() bildirimleri, hem kaba yaş saatini hem de düzenlenmiş tarih-saat nesnesini gösteren bir verim üretir ve ilk zaman damgasının ve onun insana uyum sağlayan aynısının makul bir tasvirini verir.
Python kullanarak çağ zamanını DateTime saat dilimine dönüştürme
Şunu kullanabiliriz: saat dilimi() işlevi pytz Epoch saatini DateTime saat dilimine dönüştürmek için paket. Aynı dönüşümü gösteren aşağıdaki örneği ele alalım.
Örnek:
# Here, we are importing the required package(s) and module(s) from datetime import datetime import pytz # Here, we are using the timezone() function my_timezone = pytz.timezone('CST6CDT') # Here, we are using the localize() function date_timezone = my_timezone.localize( datetime( 2021, 6, 10, 9, 34, 32 ), is_dst = None ) # Here, we are printing the values print( 'DateTime Time zone:', date_timezone )
Çıktı:
DateTime Time zone: 2021-06-10 09:34:32-05:00
Açıklama:
Yukarıdaki örnekte, belirli bir zaman bölgesindeki tarih ve saat nesneleriyle çalışmak için datetime modülü pytz modülünün yanında kullanılır. İçeriğin temel amacı, bir tarihsaat nesnesi oluşturmak ve saat dilimindeki noktasını açıkça 'CST6CDT'ye (Gün Işığından Tasarruf Zamanıyla Odak Standart Saati) koymak, ardından bu noktada sonraki tarih ve saati yazdırmaktır.
Bu şekilde, 'CST6CDT'yi adresleyen bir zaman bölgesi nesnesi oluşturmak için pytz modülünün timezone() yeteneği kullanılır. Daha sonra, belirli bir tarih/saat nesnesi için saat dilimindeki noktayı belirlemek üzere zaman bölgesi nesnesindeki kısıtlama() özelliği kullanılır (10 Haziran 2021, 9:34:32)
is_dst=Yok sınırı, ışık tasarrufu süresi (DST) verilerinin net bir şekilde verilmediğini gösterir ve bu, kısıtlama() özelliğinin önceden belirlenen süreye göre uygun DST durumuna karar vermesine olanak tanır. En sonunda içerik, açıkça ayarlanan zaman bölgesiyle sonraki tarihsaat nesnesini yazdırır.
Python kullanarak Unix çağ zamanını DateTime'a dönüştürme
Unix çağ zamanını DateTime'a dönüştürme süreci daha önce yaptığımıza benzer. Bu süreç şunları içerir: tarihsaat.fromtimestamp() Unix çağ zamanını DateTime nesnesine dönüştüren işlev ve strftime() nesneyi uygun DateTime biçimine dönüştürme işlevi.
Aynısını gösteren aşağıdaki örneği ele alalım.
Örnek:
# Here, we are importing the datetime library import datetime # Here, we have defined a constant value for the epoch time epoch_time = 252384207 # Here, we are using the datetime.fromtimestamp() function datetime_obj = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using the strftime() function datetime_str = datetime_obj.strftime( '%Y - %m - %d %H : %M : %S' ) # Here, we are printing the values print( 'Unix epoch time:', epoch_time ) print( 'DateTime:', datetime_str )
Çıktı:
Unix epoch time: 252384207 DateTime: 1977 - 12 - 31 08 : 13 : 27
Açıklama:
Yukarıdaki örnekte datetime modülü, 252384207 saniye olarak belirtilen belirli bir yaş süresini daha anlaşılır bir organizasyona dönüştürmek için kullanılmıştır. Temel amaç, çağ zamanından bir tarih saat nesnesi oluşturmak ve daha sonra onu gösteri için bir dize olarak tasarlamaktır. İçerik, datetime modülünün getirilmesiyle başlar. Daha sonra datetime.fromtimestamp() özelliği, yaş süresini bir datetime nesnesine dönüştürmek için kullanılır.
Datetime_obj değişkeninde bir kenara bırakılan sonraki datetime nesnesi, ilgili tarih ve saat inceliklerini belirtir. Daha sonra, datetime nesnesini belirli bir organizasyona sahip bir dize olarak tasarlamak için strftime() yeteneği kullanılır. Bu durum için belirtilen yapılandırma, yılı, ayı, günü, saati, anı ve saniyeyi adresleyen '%Y - %m - %d %H : %M : %S' şeklindedir.
En sonunda içerik hem ilk Unix çağ saatini hem de düzenlenmiş tarihsaat dizesini yazdırır. Bu print() bildirimleri, hem kaba yaş saati hem de düzenlenmiş tarih-saat dizesini gösteren bir verim yaratır ve ilk zaman damgasının ve onun insana uyum sağlayan aynısının şaşmaz bir tasvirini verir.
Python kullanarak DateTime'ı milisaniye cinsinden dönem zamanına dönüştürme
Epoch DateTime'ı milisaniyeye dönüştürmek için şunu kullanabiliriz: strptime() Belirtilen dizeden datetime nesnesini döndüren ve zaman damgası() nesneyi saniyelere dönüştürme işlevi. Ayrıca epoch DateTime'ı milisaniye cinsinden üretebilmemiz için ortaya çıkan değeri bin ile çarpmamız gerekiyor.
Aynı şeyi gösteren bir örneği ele alalım.
Örnek:
# Here, we are importing the datetime module from datetime import datetime # Here, we are using the strptime() function dt_obj = datetime.strptime( '10-6-2021 10:33:35,72', '%d-%m-%Y %H:%M:%S,%f') epoch_msec = dt_obj.timestamp() * 1000 print('epoch time in milliseconds:', epoch_msec)
Çıktı:
epoch time in milliseconds: 1623301415720.0
Açıklama:
Yukarıdaki örnekte, datetime modülü, belirli bir tarih ve saati adresleyen tasarlanmış bir diziyi milisaniye cinsinden tahmin edilen bir yaş zaman değerine dönüştürmek için kullanılır. Döngü, verilen '%d-%m-%Y %H' tasarımının ışığında '10-6-2021 10:33:35,72' bilgi dizesini ayrıştıran strptime() yeteneğinin kullanılmasıyla başlar: %M:%S,%f'. Bu konfigürasyon, bilgi dizisinin gün, ay, yıl, saat, an, saniye ve mikrosaniye kısımlarını gösterir.
ayarlar menüsü android
dt_obj değişkenine konulan sonraki datetime nesnesi, ayrıştırılan tarih ve saat verilerini özetler. Bu şekilde içerik, Unix çağından (1 Ocak 1970, 00:00:00 UTC) bu yana geçen saniye miktarını adresleyerek, datetime nesnesi için timestamp() stratejisini kullanarak yaş süresini belirler. Bu değerin 1000 inanan tarafından milisaniyeye çıkarılması, zamanın daha ayrıntılı bir tasvirini sağlıyor.
Sonunda içerik, print() artikülasyonunu kullanarak belirlenen yaş süresini milisaniye cinsinden yazdırır.
Python kullanarak Epoch zaman damgasını DateTime'a dönüştürme
Şunu kullanabiliriz: tarihsaat.fromtimestamp() Epoch zaman damgasını DateTime'a dönüştürme işlevi. Aşağıda gösterilen bir örnek:
Örnek:
# Here, we are importing the datetime module import datetime # Here, we have defined a constant value for epoch timestamp epoch_time = 33456871 # Here, we are using the datetime.fromtimestamp() function the_datetime = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the values print( 'epoch timestamp:', epoch_time ) print( 'DateTime:', the_datetime )
Çıktı:
epoch timestamp: 33456871 DateTime: 1971-01-23 11:04:31
Açıklama:
Yukarıdaki örnekte, tarihsaat modülü, 33456871 saniye olarak adreslenen belirli bir yaş zaman damgasını daha makul ve anlaşılır bir konfigürasyona dönüştürmek için kullanılmıştır. İçerik, tarih ve saatlerle çalışmanın farklı işlevlerine izin veren datetime modülünün getirilmesiyle başlar.
Unix çağından (1 Ocak 1970, 00:00:00 UTC) bu yana geçen saniyelerin miktarını belirten yaş zaman damgası, içerik içindeki epoch_time değişkenine tahsis edilmiştir. Dolayısıyla, datetime.fromtimestamp() yeteneği, bu yaş zaman damgasını the_datetime adlı bir datetime nesnesine dönüştürmek için kullanılır.
İçerik, print() eklemlerini kullanarak hem ilk yaş zaman damgasını hem de düzenlenmiş tarih saat nesnesini yazdırarak kapanır.
Python'da Epoch DateTime ile ilgili hataları anlama
Python programlama dilinde epoch datetime ile çalışırken Python epoch datetimeyear is out of range veya Python Invalid Argument hatasıyla karşılaşabiliriz.
Sorunu anlayabilmek için bir örnek üzerinde duralım.
Örnek:
# Here, we are importing the datetime module import datetime # Here, we are using the timestamp() function epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() # Here, we are printing the values print( epoch_time )
Çıktı:
Traceback (most recent call last): File 'D:Pythonepochpython.py', line 5, in epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() OSError: [Errno 22] Invalid argument
Açıklama:
Yukarıdaki örnekte, datetime modülü, bu durum için belirli bir tarih saatini ('1960-06-10 00:00:00') timestamp() özelliğini kullanarak yaş zamanına dönüştürmek için kullanılır. İçerik, tarih ve saat görevleriyle bağlantılı işlevlere izin veren datetime modülünün getirilmesiyle başlar.
İçeriğin esas kullanışlılığı, 10 Haziran 1960 saat 12:00'yi adresleyen bir tarih saat nesnesine uygulanan timestamp() özelliğinin kullanımında yatmaktadır. Bu yetenek, Unix çağından (1 Ocak 1970, 00:00:00 UTC) önceden belirlenen tarih saatine kadar geçen saniye miktarını adresleyerek yaş süresini hesaplar ve döndürür.
Sonuç daha sonra print() bildirisi kullanılarak yazdırılır ve '- 306691200.0' gibi görünebilecek bir sonuç oluşturulur.