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

"Przesłanie" wartości z słownika do listy

Object Storage Arubacloud
0 głosów
201 wizyt
pytanie zadane 8 marca 2020 w Python przez viGor Użytkownik (740 p.)

Cześć, mam taki problem, otóż próbowałem stworzyć mały program, który obliczy wiek, a potem przypisze go do listy(W), po czym doda do tej samej listy odpowiednie wartości z wcześniej utworzonego słownika(person). Niestety coś nie wypaliło i  nie potrafię sam tego rozwiązać, a jestem bardzo ciekaw jak to zrobić, bo na pewno tym lub innym sposobem da się to wykonać.

KOD:

person = {"wiek": "", "wzrost": 185, "narodowosc": "Poland"}

promptAge = input("Podaj kiedy się urodziłeś(rok)")
promptAge = int(promptAge)
age = 2020 - promptAge

person["wiek"] = age

if person.get("wiek") < 18:

    checkAge = 18 - age

    print("Jesteś niepełnoletni, do pełnoletniości pozostało Ci:", checkAge, "lat")
else:
    print("Jesteś pełnoletni")

nationality = person.get("narodowosc")
print(nationality)

W = []

W[0] = person.get("narodowosc")
W[1] = person.get("wiek")
W[2] = person.get("wzrost")

print(W)

 

1 odpowiedź

0 głosów
odpowiedź 8 marca 2020 przez Benek Szeryf (91,110 p.)

Trochę zakręciłeś. Szczególnie nie wiem po co chcesz rzutować wartości na listę na samym końcu. No i wypadałoby zadbać o to, by bieżący rok był pobierany automatycznie (co jak skrypt uruchomisz za rok?). Moja propozycja:

from datetime import datetime

current_year = datetime.now().timetuple()[0]
person = {}

for key, mapper in zip(['year of birth', 'height', 'nationality'], [int, float, str]):
    val = mapper(input(f'Your {key}: '))
    person[key] = val

person['age'] = current_year - person.pop('year of birth')
print(list(person.values()))

 

komentarz 8 marca 2020 przez viGor Użytkownik (740 p.)
Na pewno przeanalizuję twoją odpowiedź, a zakręciłem daltego, że po prostu dopiero się uczę, i jak oglądam sobie kurs i mam tam podane że np. zmienna tworzymy poprzez "x = 5", to mi to nie wystarczy i muszę pokombinować - wymyślam jakieś niezbyt trudne zadanie i próbuję zrobić. Dlatego jak tylko ogarnę trochę więcej rzeczy to wrócę do tego tematu. Dziena :-D

Podobne pytania

0 głosów
1 odpowiedź 140 wizyt
pytanie zadane 23 października 2020 w C# przez Masterkk121 Początkujący (280 p.)
+1 głos
1 odpowiedź 472 wizyt
pytanie zadane 4 września 2021 w Python przez Hajpa Użytkownik (910 p.)

92,681 zapytań

141,583 odpowiedzi

320,070 komentarzy

62,041 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

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!

...