0Pricing
Lua Academy · Lekcja

Formatowanie dat

Utworzy Pan/Pani czytelne napisy z datami.

Formatowanie dat to bezpłatna lekcja Lua Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Lua Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Lua Academy zawiera 4 lekcji w sumie.

Kształtowanie wyniku

Wiadomo już, że os.date może formatować czas. Ta lekcja skupia się na samym łańcuchu formatu: niewielkich kodach %, które dokładnie określają sposób wyświetlania daty.

Opanowanie tych kodów pozwala tworzyć daty w dowolnym stylu — od 2024-03-09 po Saturday, March 9.

print(os.date("%Y-%m-%d"))

Rok, miesiąc, dzień

Podstawowe kody daty to %Y dla roku zapisanego za pomocą 4 cyfr, %m dla miesiąca zapisanego za pomocą 2 cyfr (01–12) oraz %d dla dnia zapisanego za pomocą 2 cyfr (01–31).

Wszystko, co nie jest kodem, na przykład znajdujące się tutaj myślniki, jest wypisywane dokładnie tak, jak zostało zapisane.

print(os.date("%Y/%m/%d"))
print(os.date("%d-%m-%Y"))

Godziny, minuty, sekundy

Do formatowania godziny należy użyć %H dla godziny w formacie 24-godzinnym (00–23), %M dla minut oraz %S dla sekund.

Każda z tych wartości zajmuje dwie cyfry; w razie potrzeby na początku dodawane jest zero, dzięki czemu godziny są zawsze równo wyrównane.

print(os.date("%H:%M:%S"))

Zegar 12-godzinny

Jeśli potrzebny jest format AM/PM, należy użyć %I dla godziny w formacie 12-godzinnym (01–12) oraz %p dla oznaczenia AM lub PM.

Połączenie tych kodów pozwala uzyskać przyjazny zapis, taki jak 03:45 PM, który wiele osób uważa za łatwiejszy do odczytania.

print(os.date("%I:%M %p"))

Nazwy dni

Lua może wypisywać pełne nazwy dni tygodnia. %A zwraca pełną nazwę, na przykład Monday, a %a — skróconą, na przykład Mon.

Nazwy te zależą od ustawień regionalnych systemu, dlatego pojawiają się w języku skonfigurowanym na komputerze.

print(os.date("%A"))
print(os.date("%a"))

Nazwy miesięcy

Miesiące działają tak samo. %B zwraca pełną nazwę miesiąca, na przykład March, a %b — skróconą, na przykład Mar.

Połączenie nazw z liczbami pozwala utworzyć łańcuch daty w formacie przypominającym nagłówek.

print(os.date("%B %d, %Y"))

Przyjazna pełna data

Łącząc kody ze zwykłym tekstem, można zapisać niemal dowolne zdanie. W tym przypadku dzień tygodnia, miesiąc, dzień i rok tworzą czytelny wiersz.

Przecinek i spacje są zwykłymi znakami umieszczonymi między kodami.

print(os.date("%A, %B %d, %Y"))

Formatowanie zapisanego czasu

Formatowanie nie musi dotyczyć wyłącznie bieżącego czasu. Przekazanie zapisanej liczby czasu jako drugiego argumentu pozwala sformatować dowolny moment w ten sam sposób.

Właśnie tak dzienniki pokazują, kiedy nastąpiło każde wcześniejsze zdarzenie.

local t = os.time({year=2022, month=12, day=25})
print(os.date("%A, %B %d, %Y", t))

Dzień roku i tygodnia

Kilka dodatkowych kodów przydaje się do zliczania. %j zwraca dzień roku (001–366), a %w zwraca numer dnia tygodnia, przy czym niedziela ma wartość 0.

Kody te pomagają w tworzeniu pasków postępu i logiki planowania.

local t = os.time({year=2024, month=2, day=1})
print("Day of year:", os.date("%j", t))
print("Weekday num:", os.date("%w", t))

Znak procentu jako tekst

Jeśli wynik ma zawierać dosłowny znak procentu, należy zapisać %%, a Lua wypisze pojedynczy znak %.

Zapobiega to niejasnościom, gdy symbol procentu znajduje się obok kodu formatu.

print(os.date("Loaded 100%% on %Y-%m-%d"))

Budowanie nazw plików

Popularnym rozwiązaniem jest umieszczenie znacznika czasu w nazwie pliku. Kody takie jak %Y%m%d_%H%M%S tworzą sortowalny ciąg bez spacji.

Pliki nazwane w ten sposób są automatycznie porządkowane chronologicznie w dowolnym folderze.

local name = os.date("backup_%Y%m%d.txt")
print(name)

Szybkie sprawdzenie

Proszę wybrać właściwy kod do danego zadania.

Podsumowanie

Łańcuchy formatu łączą kody % ze zwykłym tekstem. Najważniejsze kody to: %Y %m %d dla daty, %H %M %S dla czasu oraz %A %B dla nazw.

Należy użyć %I %p dla formatu 12-godzinnego, %% dla dosłownego znaku procentu oraz przekazać liczbę czasu, aby sformatować wcześniejsze momenty. Dzięki nim można kształtować daty w dowolny sposób.

Często zadawane pytania

Czy lekcja „Formatowanie dat” jest bezpłatna?

Tak — pełny tekst „Formatowanie dat” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Lua Academy, przejdź na CoddyKit PRO. Kurs Lua Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Formatowanie dat”?

Utworzy Pan/Pani czytelne napisy z datami. Ćwiczysz Lua Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Lua Academy?

Nie wymagamy żadnego doświadczenia. Lua Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Formatowanie dat”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Lua Academy?

Tak. Każda lekcja Lua Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. os.time i os.date
  2. Formatowanie dat
  3. Operacje na czasie
  4. Mierzenie czasu trwania
← Powrót do Lua Academy