helenafanfrlikova / python-autumn-2022

0 stars 0 forks source link

Úkol č. 2 #2

Closed helenafanfrlikova closed 1 year ago

helenafanfrlikova commented 1 year ago

https://github.com/helenafanfrlikova/python-autumn-2022/blob/main/ukol-02.py

Ahoj, posílám druhý úkol. Funguje mi to, ale mám pocit, že tu první část mám dost překombinovanou a nemůžu přijít na to, jak by se to dalo zjednodušit. Chtěla jsem si vytvořit nový slovník obsahující všechny regiony. Nevím ale, jak by se případně dalo vyrušit to, že v tom novém slovníku jsou ty názvy regionů opakovaně. A hlavně jestli to s tím slovníkem vsechny_regiony není zbytečně složité a nešlo by to jednodušeji. Předem moc díky! Helena

pmoravkova commented 1 year ago

Ahoj, jdes na to dobre. Akorat ty delas vlastne to, ze pricitas vlastne jmeno kontinentu znovu a znovu, dobry je prihodit podminku, jestli to v seznamu/slovniku neni, tak to do nej pridat. Nebo tady upravou jen jednicky ti vrati, kolikrat je ten dany region ve slovniku:

vsechny_regiony = {}
for item in staty:
    region = item["region"]
    if region in vsechny_regiony:
        vsechny_regiony[region] += 1
    else:
        vsechny_regiony[region] = 1

Nebo si delat seznam:

vsechny_regiony = []
for item in staty:
  if item['region'] not in vsechny_regiony:
  vsechny_regiony.append(item['region'])

Dalsi moznost, co psala pak Andrea, je udelat si jednoduchou promennou, kterou menis, pokud to kontinent najde:

je_tam_region = False
zajem = input("Jaký region tě zajímá? ")
for item in staty:
    if item['region'] == zajem:
        print(stat['name'])
        je_tam_region = True
if not je_tam_region:
    print('neznamy kontinent')

tahle moznost je z hlediska software vyvoje nejlepsi, protoze prochazis seznam jen jednou a pamatujes si jen kratkou hodnotu, ale to je pokrocilejsi to resit z hlediska pameti a kolikrat to prochazi seznam.