• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

LNU - PYTHON

Object Storage Arubacloud
0 głosów
800 wizyt
pytanie zadane 5 kwietnia 2022 w Python przez mewtwo Użytkownik (830 p.)
Język PYTHON,

Nie wiem jak zabrać się za to zadanie, więc proszę o pomysły. Z góry dziękuję za odpowiedź.

funkcja chineeseWeekDays() powinna zwracać string z nazwą dnia tygodnia w języku chińskim w zależności od wartości przekazanej przez parametr day, która jest nazwą danego dnia tygodnia w języku angielskim. Dla wartości "monday" funkcja powinna zwracać string oznaczający poniedziałek, dla wartości "tuesday" string oznaczający wtorek itd.

Parametr day może przyjąć jedną z następujących wartości nazw kolejnych dni tygodnia zapisanych w języku angielskim: "monday", "tuesday", "wednesday", "thursday", "friday", "saturday" lub "sunday".

Odpowiednie stringi w języku chińskim otrzymasz w krotce przez parametr chineeseDays. Pierwszy string w krotce odpowiada poniedziałkowi, a ostatni niedzieli. Skorzystaj z tej krotki i uzupełnij funkcję, aby poprawnie działała.

Przykład:

Wejście: "monday"

Wyjście: "星期一"
komentarz 5 kwietnia 2022 przez adrian17 Ekspert (344,860 p.)

Nie wiem jak zabrać się za to zadanie, więc proszę o pomysły.

A z czym masz problem? Co już masz? Nikt tutaj nie napisze kodu za Ciebie.

komentarz 5 kwietnia 2022 przez VBService Ekspert (253,340 p.)

Rozumiem, że w zadaniu jest podany już jakiś kod

Skorzystaj z tej krotki i uzupełnij funkcję, aby poprawnie działała.

pokaż go, proszę, jeśli możesz, i dokładnie opisz, czego nie rozumiesz.  smiley

komentarz 5 kwietnia 2022 przez mewtwo Użytkownik (830 p.)

Nic konkretnego jeszcze nie zrobiłem w kodzie, ponieważ nie wiem jak zabrać się to zadanie (konkretnie jak przyrównać do siebie angielskie i chińskie słowa). 

Kod:  

Zakropkowane miejsca - nie wiem co tu wstawić (główne warunek if z return sobie poradzę )

def chineeseWeekDays(chineeseDays, day):
    
    for i in day: 
        if ....:
            return ...
        else:
            ...
            
    return ....

 

komentarz 5 kwietnia 2022 przez VBService Ekspert (253,340 p.)

Skoro w zadaniu jest

Parametr day może przyjąć jedną z następujących wartości

to raczej

for i in day: 

odpada, jak chcesz iterować coś co przyjmuje jedną wartość.  smiley

komentarz 5 kwietnia 2022 przez VBService Ekspert (253,340 p.)
edycja 5 kwietnia 2022 przez VBService

Przeanalizuj taki przykład, może znajdziesz podpowiedź

 

[ on-line ]

def numberOfDayOfWeek(day):
    daysweekEN = ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")
    for dayName in daysweekEN:
	    if dayName == day:
	        return daysweekEN.index(dayName)

day = "wednesday"
print(f"{day} is the {(numberOfDayOfWeek(day) + 1)} day of the week.")

day = "friday"
print(f"{day} is the {(numberOfDayOfWeek(day) + 1)} day of the week.")

 

daysweekEN jest krotką (tuple). W krotce indeksy "zaczynają" się od zera, więc dla tego przykładu użyłem

(numberOfDayOfWeek(day) + 1)

 

lub taki

[ on-line ]

def numberOfDayOfWeek(day):
    daysweekEN = ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")
    numeralEN  = ("first", "second", "third", "fourth", "fifth", "sixth", "seventh")
    
    for dayName in daysweekEN:
	    if dayName == day:
	        return numeralEN[daysweekEN.index(dayName)]

day = "wednesday"
print(f"{day} is the {numberOfDayOfWeek(day)} day of the week.")

day = "friday"
print(f"{day} is the {numberOfDayOfWeek(day)} day of the week.")

day = "monday"
print(f"{day} is the {numberOfDayOfWeek(day)} day of the week.")

 

 

 

P.S. Domyślam się, że "chińska" krotka mogła by wyglądać np. tak  wink

daysweekCN = ("星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日")

 

1
komentarz 5 kwietnia 2022 przez mewtwo Użytkownik (830 p.)
Dziękuje, za pomoc :)
komentarz 6 kwietnia 2022 przez VBService Ekspert (253,340 p.)
edycja 6 kwietnia 2022 przez VBService

Pewnie już zrobiłeś zadanie, można chyba podać przykładowe rozwiązanie. wink

 

[ on-line ]

def chineeseWeekDays(day):
    daysweekEN = ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")
    daysweekCN = ("星期一",  "星期二",  "星期三",     "星期四",   "星期五",  "星期六",   "星期日")

    for dayName in daysweekEN:
        if dayName == day:
            return daysweekCN[daysweekEN.index(dayName)] 

for day in ("wednesday", "friday", "monday"):
    print(f"{day.capitalize()} written in Chinese looks like this {chineeseWeekDays(day)}.")

 

[ UPDATE ]

bez sensu się iterować i porównywać elementy, jak `.index()` robi w zasadzie to samo

laugh no tak, "ale skucha"

def chineeseWeekDays(day):
    daysweekEN = ("monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday")
    daysweekCN = ("星期一",  "星期二",  "星期三",     "星期四",   "星期五",  "星期六",   "星期日")
 
    return daysweekCN[daysweekEN.index(day)] 
 
for day in ("wednesday", "friday", "monday"):
    print(f"{day.capitalize()} written in Chinese looks like this {chineeseWeekDays(day)}.")

 

komentarz 6 kwietnia 2022 przez adrian17 Ekspert (344,860 p.)

tylko zaznaczę że

Odpowiednie stringi w języku chińskim otrzymasz w krotce przez parametr chineeseDays

No i trochę bez sensu się iterować i porównywać elementy, jak `.index()` robi w zasadzie to samo. Albo jedno albo drugie :)

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 428 wizyt
pytanie zadane 27 maja 2023 w Python przez agantka Nowicjusz (150 p.)
0 głosów
2 odpowiedzi 556 wizyt
pytanie zadane 14 kwietnia 2022 w Python przez mewtwo Użytkownik (830 p.)
0 głosów
1 odpowiedź 598 wizyt
pytanie zadane 14 kwietnia 2022 w Python przez mewtwo Użytkownik (830 p.)

92,576 zapytań

141,426 odpowiedzi

319,651 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...