Loading...
Python

Կարող եք ձեր կոդը փորձարկել այստեղ

Python

Գլուխ 9. Աշխատանք ամսաթվերի և ժամերի հետ

Ամսաթվի մոդուլ

Ամսաթվերի և ժամերի հետ աշխատելու հիմնական ֆունկցիոնալությունը կենտրոնացած է ամսաթվերի մոդուլում հետևյալ դասերի տեսքով.

ամսաթիվը

ժամանակ

ամսաթիվը

ամսաթվի դաս
Ամսաթվերի հետ աշխատելու համար մենք կօգտագործենք date class , որը սահմանված է datetime մոդուլում: Ամսաթվի օբյեկտ ստեղծելու համար մենք կարող ենք օգտագործել ամսաթիվը կառուցող սարքը, որը հաջորդաբար ընդունում է երեք պարամետր՝ տարի, ամիս և օր:
date(year, month, day)
Օրինակ, եկեք ստեղծենք ամսաթիվ.
import datetime yesterday = datetime.date(2017,5, 2) print(yesterday) # 2017-05-02
Եթե Ձեզ անհրաժեշտ է ստանալ ընթացիկ ամսաթիվը, կարող եք օգտագործել today() մեթոդը.
from datetime import date today = date.today() print(today) # 2017-05-03 print("{}.{}.{}".format(today.day, today.month, today.year)) # 2.5.2017
Օգտագործելով հատկությունների օրը, ամիսը, տարին, կարող եք ստանալ համապատասխանաբար օրը, ամիսը և տարին
Ժամանակի դաս
Ժամանակի դասը պատասխանատու է ժամանակի հետ աշխատելու համար : Օգտագործելով դրա կոնստրուկտորը, դուք կարող եք ստեղծել ժամանակային օբյեկտ.
time([hour] [, min] [, sec] [, microsec])
Կոնստրուկտորն ընդունում է ժամերը, րոպեները, վայրկյանները և միկրովայրկյանները հաջորդաբար: Բոլոր պարամետրերը կամընտիր են, և եթե մենք չփոխանցենք պարամետր, ապա համապատասխան արժեքը կվերածվի զրոյի:
from datetime import time current_time = time() print(current_time) # 00:00:00 current_time = time(16, 25) print(current_time) # 16:25:00 current_time = time(16, 25, 45) print(current_time) # 16:25:45
ամսաթվի դաս
Համանուն մոդուլից datetime դասը համատեղում է ամսաթվի և ժամի հետ աշխատելու հնարավորությունները։ Datetime օբյեկտ ստեղծելու համար կարող եք օգտագործել հետևյալ կոնստրուկտորը.
datetime(year, month, day [, hour] [, min] [, sec] [, microsec])
Առաջին երեք պարամետրերը, որոնք ներկայացնում են տարին, ամիսը և օրը, պարտադիր են: Մնացածը կամընտիր են, և եթե դրանց համար արժեքներ չնշենք, դրանք լռելյայնորեն սկզբնավորվում են զրոյի:
from datetime import datetime deadline = datetime(2017, 5, 10) print(deadline) # 2017-05-10 00:00:00 deadline = datetime(2017, 5, 10, 4, 30) print(deadline) # 2017-05-10 04:30:00
Ընթացիկ ամսաթիվը և ժամը ստանալու համար կարող եք զանգահարել now() մեթոդը.
from datetime import datetime now = datetime.now() print(now) # 2017-05-03 11:18:56.239443 print("{}.{}.{} {}:{}".format(now.day, now.month, now.year, now.hour, now.minute)) # 3.5.2017 11:21 print(now.date()) print(now.time())
Օգտագործելով օր, ամիս, տարի, ժամ, րոպե, վայրկյան հատկություններ, կարող եք ստանալ անհատական ամսաթվի և ժամի արժեքներ: Իսկ date()և մեթոդների միջոցով time()կարող եք համապատասխանաբար առանձին ստանալ ամսաթիվը և ժամը։
Փոխակերպում տողից ամսաթվին
Datetime դասի ֆունկցիոնալության մեջ հատկանշական է strptime() մեթոդը , որը թույլ է տալիս վերլուծել տողը և այն վերածել ամսաթվի։ Այս մեթոդը ենթադրում է երկու պարամետր.
strptime(str, format)
Առաջին պարամետրը՝ str, ներկայացնում է ամսաթվի և ժամի տողերի սահմանումը, իսկ երկրորդ պարամետրը ձևաչափն է, որը սահմանում է, թե ինչպես են ամսաթվի և ժամի տարբեր մասերը դասավորված այդ տողի ներսում։

Ձևաչափը որոշելու համար կարող ենք օգտագործել հետևյալ կոդերը.

%d : ամսվա օրը որպես թիվ

%m : ամսվա հերթական համարը

%y : տարին որպես 2 թվեր

%Y : տարին որպես 4 թվեր

%H : ժամ 24 ժամ ֆորմատով

%M : րոպե

%S : վայրկյան

Մենք կօգտագործենք տարբեր ձևաչափեր.
from datetime import datetime deadline = datetime.strptime("22/05/2017", "%d/%m/%Y") print(deadline) # 2017-05-22 00:00:00 deadline = datetime.strptime("22/05/2017 12:30", "%d/%m/%Y %H:%M") print(deadline) # 2017-05-22 12:30:00 deadline = datetime.strptime("05-22-2017 12:30", "%m-%d-%Y %H:%M") print(deadline) # 2017-05-22 12:30:00

Մեկնաբանություն գրելու համար խնդրում ենք մուտք լինել