# Kā Python valodā pārvērst virkni datetime formātā

Datetime objekti ļauj veikt vienkāršus laika aprēķinus, tostarp pievienot vai atņemt intervālus. **Stingru pārveidošana datetime objektos** ir būtiska, lai precīzi organizētu, analizētu un attēlotu laika datus Python.

## Kā Python valodā darbojas stingu pārveidošana datuma un laika formātā?

Python string pārveidošana datetime ietver teksta string, kas ietver datumu un/vai laiku, pārveidošanu datetime objektā. Datetime ir Python datu struktūra, kas paredzēta **datuma un laika informācijas** apstrādei un pielāgošanai. String pārveidošana datetime bieži ir nepieciešama, lai apstrādātu datuma un laika datus, kas parādās string formātā.

Dati tiek konvertēti **formātā, ko var izmantot**, lai veiktu aprēķinus, salīdzinātu datus vai formatētu laika informāciju, cita starpā. Metodes izteikumu savienošanai, izmantojot Python string formātu, var būt noderīgas arī datetime objektu pārvaldībā.

## Kā Python valodā pārvērst virknes datetime objektos

Ir dažādas funkcijas un moduļi, piemēram, `datetime` bibliotēka un `strptime()` metode, kurus var izmantot, lai pārvērstu virknes datuma un laika objektos un otrādi.

### `strptime()`

`strptime()` (string parse time) metode no `datetime` bibliotēkas tiek izmantota, lai pārvērstu virkni Python datetime objektā. Ir nepieciešami **divi argumenti**: virkne, kas jāanalizē, un virknes datuma/laika formāts.

```python
datetime.strptime(date_string, format)
```

### `datetime.datetime()`

Izmantojot `strptime()` metodi, virkni var konvertēt `datetime.datetime` objektā, ņemot vērā konkrētu datuma/laika formātu.

```python
from datetime import datetime
date_string = '2023-10-30 12:00:00'
date_object = datetime.strptime(date_string, '%Y-%m-%d %H:%M:%S')
print(date_object) # Output: 2023-10-30 12:00:00
```

Šajā piemērā `date_string` ir norādīts kā `'2023-10-30 12:00:00'`, un formāts `'%Y-%m-%d %H:%M:%S'` nosaka secību un to, kā datums un laiks jāparāda virknē. Metode `strptime()` interpretē virkni, pamatojoties uz šo formātu, un ģenerē objektu `datetime.datetime`, kas pēc tam tiek saglabāts mainīgajā `date_object`.

Šeit ir `'%Y-%m-%d %H:%M:%S'` nozīme:

- **`%Y`**: Četrciparu gads
- **`%m`**: Divciparu mēnesis
- **`%d`**: Divciparu diena
- **`%H`**: Stunda (24 stundu formāts)
- **`%M`**: Minūtes
- **`%S`**: Sekundes

### `datetime.time()`

Pārveidojot virknes par `datetime.time` objektu, var attēlot **laiku bez datuma**. To var izdarīt, izmantojot `strptime()` metodi no `datetime` klases vai sadalot laika virkni stundās, minūtēs un sekundēs.

```python
from datetime import datetime
time_string = '14::30::00'
time_object = datetime.strptime(time_string, '%H::%M::%S').time()
print(time_object) # Output: 14:30:00
```

`'%H:%M:%S'` apzīmē formātu stundas:minūtes:sekundes. `strptime()` metode interpretē laika virkni saskaņā ar šo formātu un izveido `datetime.time` objektu.

### `datetime.date()`

Alternatīvi, jūs varat pārveidot virkni par `datetime.date` objektu, izmantojot `strptime()` metodi no `datetime` klases, vai manuāli sadalot datuma virkni gada, mēneša un dienas komponentēs.

```python
from datetime import datetime
date_string = '2023-11-30'
date_object = datetime.strptime(date_string, '%Y-%m-%d').date()
print(date_object) # Output: 2023-11-30
```

`'%Y-%m-%d'` ir gads-mēnesis-diena formāts. `strptime()` metode analizē datuma virkni un izveido `datetime.date` objektu.

## Kā novērst `strptime()` kļūdas

Izmantojot `strptime()` metodi, lai Python valodā pārvērstu virknes datetime objektos, var rasties kļūdas, jo īpaši, ja norādītais formāts neatbilst ievades virknes formātam. Šeit ir daži bieži sastopami kļūdu veidi un to novēršanas veidi:

- **`ValueError: time data '...' does not match format '...'`**: Šī kļūda rodas, ja ievadītā virkne neatbilst norādītajam formātam. Pārliecinieties, ka `strptime()`. punktā ir izmantots pareizs formāta paraugs.
- **`ValueError: unconverted data remains`**: Šī kļūda tiek parādīta, ja pēc virknes apstrādes paliek neinterpretēti dati. Pārliecinieties, ka formāta paraugs aptver visas ievades virknes sadaļas.
- **`TypeError: strptime() argument 1 must be str, not ...`**: Tas var notikt, ja parametrs, kas nodots `strptime()`, nav virkne. Pārliecinieties, ka norādītā vērtība ir virkne, kas ietver datuma/laika formātu.

Jums jāpārliecinās, ka formāta modelis pareizi interpretē visas ievades virknes daļas (gads, mēnesis, diena, laiks utt.). Tāpat ir svarīgi ņemt vērā iespējamās atšķirības atdalītājos, lielajos burtiem un citās detaļās starp formāta modeli un ievades virkni.


This is a markdown version of: [https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/parverst-virknes-datetime-python/](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/parverst-virknes-datetime-python/) for AI/LLM consumption.