Python, działania na godzinach

TG_Pjoter | 2021-02-17 10:25:16 UTC | #1

Cześć! Od kilku dni próbuję nauczyć się podstaw pythona. Moim zadaniem jest:

Napisz program, który: wczyta bieżące wskazanie zegarka, wyliczy jakie powinno być wskazanie za sekundę i wypisze wynik na standardowe wyjście.

Ma to wyglądać tak:

image|690x57. Mój kod wygląda tak:

import time

import datetime

teraz = datetime.datetime.now()
godzina = str(teraz.hour)
minuta = str(teraz.minute)
sekunda = str(teraz.second)
print(godzina,minuta,sekunda)

Jak pisałem wcześniej, dopiero się uczę, więc nie umiem dodać do tego sekundy oraz znaku “:”. Mógłby mi ktoś w tym pomóc? Z góry dziękuję <3

PS: Proszę, nie śmiejcie się, przecież każdy od czegoś zaczynał


Aylin | 2020-12-05 16:19:13 UTC | #2

Nie jestem ekspertem Pythona, więc moje rozwiązanie może być trochę “lewe”. Jak ktoś zna lepsze to z chęcią zapoznam się, też jestem w trakcie uczenia się :slight_smile:

Zasada numer 1:
English, do you speak it?

Zerknęłam sobie na Twój kod i jest on w porządku. Staraj się jednak używać angielskiego bo inaczej to wygląda dziwnie i jest mniej czytelne.

Zasada numer 2:
Nie twórz koła od początku

Może to wydać się dziwne ale staraj się znaleźć coś co już działa, jakieś fragmenty które posklejasz ze sobą i dadzą coś czego oczekujesz.

Znalazłam coś takiego:
https://www.codevscolor.com/python-print-date-time-hour-minute

Przerobiłam to trochę

import datetime

def currentTime():
    print("Current time: ")
    today = datetime.datetime.strftime(datetime.datetime.today() , '%Hh:%Mm:%Ss')
    print(today)

secondLater = datetime.datetime.today() + datetime.timedelta(seconds = 1)
print("")
currentTime()
print("Time after 1 second: ")
print(datetime.datetime.strftime(secondLater , '%Hh:%Mm:%Ss'))

To co zwraca powyższy kawałek:

Current time: 
22h:56m:15s
Time after 1 second: 
22h:56m:16s

Z tego co rozumiem Twoim zadaniem jest “dodanie” sekundy i pokazanie obu czasów. Tak na szybko doczytałam że przy manipulacjach czasem będzie to nazwane jako delta (timedelta tutaj), więc wystarczy skorzystać z tego co już jest w datetime :slight_smile:


system | 2021-01-05 22:05:29 UTC | #3

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.