Hvordan bruke Pytz -modulen til Python

Hvordan bruke Pytz -modulen til Python
Dato- og tidsverdier varierer basert på sonen. Disse verdiene er nødvendige for å endre for de Python -applikasjonene som krever å håndtere internasjonale brukere. I følge sonen kan ikke DateTime -modulen til Python konvertere dato- og tidsverdier. Dette problemet kan løses ved å bruke Pytz Modul av Python. Denne modulen er ikke installert i Python. Så du må installere denne modulen før du bruker den i skriptet. Hvordan Pyzt Modul kan installeres og brukes i Python, har vist i denne opplæringen.

Installer PYZT -modulen:

Kjør følgende kommando for å installere PYZT -modulen før du øver på eksemplene på denne opplæringen.

$ pip installer pytz

Eksempel-1: Skriv ut alle støttede og ofte brukte tidssoner

Følgende skript vil skrive ut alle støttede tidssoner og de mye brukte tidssonene ved hjelp av Pyzy modul. De Pyzt Modulen importeres i begynnelsen av skriptet. Pytz.all_timezones Attributt returnerer listen over alle støttede tidssoner som et listeobjekt. Pytz.Common_timezones Attributt returnerer listen over alle ofte brukte tidssoner som et listeobjekt. To lister vil bli skrevet ut etter å ha utført dette skriptet.

# Importer Pytz -modulen
Importer Pytz
# Skriv ut alle støttede tidssoner
trykk ('The Timezones støttet av Pytz -modulen: \ n', Pytz.all_timezones, '\ n')
# Skriv ut ofte brukte tidssoner
trykk ('Vanlig brukte tidssoner: \ n', pytz.common_timezones, '\ n')

Produksjon:

Følgende utgang vises etter å ha utført skriptet ovenfor.

Eksempel-2: Skriv ut landsnavn

Følgende skript vil skrive ut listen over landsnavn med landskoder og landets navn på en bestemt landskode. Pytz.country_names.varer () Metode returnerer et ordboksobjekt av landsnavn med landskoden. Landskodene er tildelt i ordboksobjektets nøkler, og landsnavnene er tildelt i ordboksobjektets verdier. For Loop har brukt i skriptet til å skrive ut landsnavnene med landskoden i hver linje ved å iterere ordbokobjektet returnert av Pytz.country_names.varer (). Deretter, landsnavnet på 'JP'Landskode vil bli skrevet ut.

# Importer Pytz -modulen
Importer Pytz
""
Skriv ut landnavnet med landskode i hver linje
bruker for loop
""
trykk ('country_names:')
for nøkkel, val i pytz.country_names.elementer ():
trykk (val, '(', nøkkel, ')')
# Skriv ut landets navn på den aktuelle landskoden
Print ('\ ncountry Navn basert på landskode (JP):', Pytz.country_names ['jp'])

Produksjon:

Følgende utgang vises etter å ha utført skriptet ovenfor. Utgangen viser landsnavn og landskoder i parentesene. Landsnavnet til 'JP' er Japan som skrives ut senere.

Eksempel-3: Skriv ut dato og tid basert på tidssone

Dato- og klokkeslettverdiene varierer basert på tidssonen. Følgende skript vil skrive ut datoen og klokkeslettet for gjeldende tidssone med det første. Deretter vil tidssonen bli endret til Oss/østlige Ved å bruke Pytz.TimeZone () -metode og dato og klokkeslett vil bli skrevet ut basert på Oss/østlige tidssone. Deretter vil tidssonen bli endret til Asia/Hong_kong tidssone, og datoen og klokkeslettet vil bli skrevet ut basert på Asia/Hong_kong tidssone. Dato og klokkeslett for UTC og IST tidssoner vil bli skrevet ut senere.

# Importer DateTime Module
Importer DateTime som DT
# Importer Pyzt -modulen
Importer Pytz
# Hent gjeldende dato
source_date = dt.dato tid.nå()
# Skriv ut gjeldende data og tid
Print ('Gjeldende dato og klokkeslett: \ n', source_date)
# Sett tidssonen til oss/østlige
CurrentTimeZone = Pytz.TIMEZONE ('Us/Eastern')
# Skriv ut gjeldende tidssone Asia/Hong_kong
trykk ('\ n den tidssonen er satt til: \ n', CurrentTimeZone)
# Les og skriv ut gjeldende dato og klokkeslett for tidssonen
CurrentDateWithTimeZone = CurrentTimeZone.Lokalisering (Source_date)
trykk ('Dato og klokkeslett for denne tidssonen: \ n', CurrentDateWithTimeZone)
# Angi målet tidssone
NewtimeZone = Pytz.Timezone ('Asia/Hong_kong')
trykk ('\ n den tidssonen er satt til: \ n', newtimezone)
# Les og skriv ut gjeldende dato og klokkeslett for den nydefinerte tidssonen
NewDateWithTimeZone = CurrentDateWithTimeZone.AsTimeZone (Newtimezone)
trykk ('Dato og klokkeslett for denne tidssonen: \ n', newdatewithTimeZone)
# Les datetiden for den spesifiserte tidssonen
trykk ('\ ndatetime av UTC tidssone:', dt.dato tid.Nå (TZ = CurrentTimeZone)))
trykk ('Datetime of IST Tidssone:', DT.dato tid.Nå (TZ = NewtimeZone))

Produksjon:

Følgende utgang vises etter å ha utført skriptet ovenfor. Utgangen viser at datoen og tidsverdiene varierer basert på tidssonen.

Eksempel-4: Skriv ut den formaterte datoen og klokkeslettet

I de forrige eksemplene skrives dato- og tidsverdiene i standardformatet. Følgende skript vil skrive ut de formaterte data og tid basert på den valgte tidssonen. Formatet på dato og klokkeslett har definert i begynnelsen av skriptet. I følge formatet vil datoen skrive ut dd-mm-yyyy Format, og tiden vil skrive ut HH: MM: SS format. Deretter vil tidssonen bli tildelt Amerika/Toronto, og datoen og klokkeslettet vil bli skrevet ut ved å bruke Strftime () funksjon med formatet nevnt ovenfor. Deretter vil tidssonen bli tildelt Asia/Dhaka og trykt som før.

# Importer DateTime Module
fra DateTime Import DateTime
# Importer tidssonemodul
fra Pytz import tidssone
# Angi dato- og klokkeslettformat
dt_format = "%d-%m-%y%h:%m:%s"
# Angi gjeldende tid til Amerika/Toronto Zone
TorontoZone = DateTime.Nå (Timezone ('America/Toronto'))
Trykk ('Dato og klokkeslett for Toronto Zone: \ n', Torontozone.strftime (dt_format))
# Endre tidssonen til Asia/Dhaka
Dhakazone = Torontozone.AsTimeZone (Timezone ('Asia/Dhaka'))
trykk ('Dato og klokkeslett for Dhaka Zone: \ n', Dhakazone.strftime (dt_format))

Produksjon:

Følgende utgang vises etter å ha utført skriptet ovenfor. Utgangen viser at tidsforskjellen mellom Toronto og Dhaka er 10 timer.

Konklusjon:

De Pyzt Modulen har mange innebygde funksjoner for å jobbe med de forskjellige tidssoners dato- og tidsverdier. Nettstedets dato- og klokkeslettverdier kan endres i henhold til besøkende tidssone ved å bruke denne modulen. Denne modulens primære bruksområder er blitt forklart i denne opplæringen ved å bruke forskjellige eksempler for å hjelpe leserne til å forstå denne modulens formål.