Nevytiskne se cely slovnik,python

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

shockwave
Level 3
Level 3
Příspěvky: 459
Registrován: únor 11
Pohlaví: Muž
Stav:
Offline

Nevytiskne se cely slovnik,python

Příspěvekod shockwave » 18 kvě 2020 20:21

Ahoj, podle ucebnice by se mel vytisknout cely slovnik, jde vam tohle prosim:

def build_profile(first, last, **user_info):
"""Build a dictionary containing everything we know about a user."""
profile = {}
profile['first_name'] = first
profile['last_name'] = last
for key, value in user_info.items():
profile[key] = value
return profile

user_profile = build_profile('albert', 'einstein', location='prince', field='math') # oznacene se nevytiskne


print(user_profile)

Reklama
Uživatelský avatar
Zakk
Level 3.5
Level 3.5
Příspěvky: 713
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod Zakk » 18 kvě 2020 21:06

výstup:

Kód: Vybrat vše

{'first_name': 'albert', 'last_name': 'einstein', 'location': 'prince', 'field': 'math'}

shockwave
Level 3
Level 3
Příspěvky: 459
Registrován: únor 11
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod shockwave » 18 kvě 2020 21:30

{'first_name': 'albert', 'last_name': 'einstein', 'location': 'prince'}

me jen tohle, nechapu

Uživatelský avatar
Zakk
Level 3.5
Level 3.5
Příspěvky: 713
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod Zakk » 18 kvě 2020 21:39

jen jsem to zkopíroval :D
a dodělal odsazení
.. nemáš chybu v odsazení ?

Kód: Vybrat vše


def build_profile(first, last, **user_info):
"""Build a dictionary containing everything we know about a user."""
    profile = {}
    profile['first_name'] = first
    profile['last_name'] = last
    for key, value in user_info.items():
       profile[key] = value
    return profile

user_profile = build_profile('albert', 'einstein', location='prince', field='math') # oznacene se nevytiskne


print(user_profile)


shockwave
Level 3
Level 3
Příspěvky: 459
Registrován: únor 11
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod shockwave » 18 kvě 2020 23:33

sem slepej uplne, diky

Uživatelský avatar
Zakk
Level 3.5
Level 3.5
Příspěvky: 713
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod Zakk » 19 kvě 2020 00:34

z mojich ( ne, moc velkých) zkušeností v 90% případů, když je nějakej "podivnej" problém v Pythonovým kódu, tak je někde chyba v odsazení..

upřímně osobně nechápu proč se nemůžou používat "kudrnatý závorky" jako u všech normálních programovacích jazyků.. :D (ale možná dost zastánců Pythonu by se se mnou hádalo..)

shockwave
Level 3
Level 3
Příspěvky: 459
Registrován: únor 11
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod shockwave » 19 kvě 2020 01:44

Zakk píše:z mojich ( ne, moc velkých) zkušeností v 90% případů, když je nějakej "podivnej" problém v Pythonovým kódu, tak je někde chyba v odsazení..

upřímně osobně nechápu proč se nemůžou používat "kudrnatý závorky" jako u všech normálních programovacích jazyků.. :D (ale možná dost zastánců Pythonu by se se mnou hádalo..)


je to tak, nezbývá než souhlasit

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7359
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod faraon » 19 kvě 2020 20:07

Vyzkoušel jsem za několik desetiletí celou řadu jazyků, některé používaly {...}, některé begin...end, další zase jiné způsoby, například speciální příkazy různé pro každý příkaz který ukončovaly. A některé z nich nebyly strukturované vůbec! Ale postupem času jsem přišel na to, že odsazování je jeden z nejdůležitějších vynálezů v umění programování.

Zahraj si s tímhle: https://blockly.games/maze?lang=cs Přitom dobře pozoruj odsazení jednotlivých struktur ve složeném programu.

K něčemu podobnému zřejmě dospěl Guido van Rossum, a tak ze svého jazyka ty nepotřebné závorky vyhodil úplně a nahradil je pouhým odsazením. Takže zatímco v jiných jazycích se dají řádky rozházet libovolně, a v programu tím udělat naprostý vizuální bordel, tak v Pythonu se to odsazování prostě dodržovat musí, jinak program nefunguje. Když funguje, je přehlednější. Začátečníkům to sice dělá potíže, ale aspoň se naučí sebedisciplinovanosti. Pokud se to nenaučí, utopí se v digitálním hnoji.

A mimochodem, dalo by se velmi dlouho hádat co je to "normální programovací jazyk". Zdaleka ne všechny dnes běžně používané mají složené závorky, a program může vypadat třeba takhle ;-)

Kód: Vybrat vše

(defun foo (a b c d) (+ a b c d))
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

Uživatelský avatar
Zakk
Level 3.5
Level 3.5
Příspěvky: 713
Registrován: únor 13
Pohlaví: Muž
Stav:
Offline

Re: Nevytiskne se cely slovnik,python

Příspěvekod Zakk » 19 kvě 2020 20:53

přesně jsem čekal, že "píchám do vosího hnízda", ale nemohl jsem si to odpustit :D a to "normální" jsem zapomněl dát do uvozovek.. :D .. jinak "normální" pro mě = "c-like".. (nejvíc znám Javu..)

tak se taky trochu rozepíšu.. :D

k Pythonu jsem se dostal až nedavno kvůli Raspberry Pi.. a jako celkově se mi ten jazyk dost líbí,všechno se zapíše krátce a jednoduše a hlavně na všechno je spoustu hotových knihoven (a člověk nemusí nic moc řešit sám od základu..) , ale tohle mě celkem iritovalo..

ono, když jen člověk něco zapomene odsadit a vyskočí hned "indentation error.." tak se nic neděje, horší je když to není syntakticky špatně, ale vytvoří to někde nějakou "záludnost" a člověk pak půl hodiny hledá chybu někde jinde.. :D

samozřejmě, že i se závorkama je pro přehlednost nutnost to správné odsazení dodržovat, ale i tak mi přijdou ty závorky přehlednější ( třeba u rozsáhlejšího kódu, kliknu na tu první závorku a IDE tu druhou zbarví atd..)

je to ale hlavně asi o tom na co si člověk zvykne..

a begin end; taky pamatuju, první jazyk se kterým jsem se ve škole setkal byl Pascal :D ( ale to je jen taková zdlouhavější méně praktická obdoba závorek..)

PS: tak jsem zkusil toho panáčka a ten poslední level mi dal teda docela zabrat :lol:


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Makro pro myš Rapture Python
    od mmmartin » 27 srp 2023 15:18 » v Problémy s hardwarem
    9
    1125
    od mmmartin Zobrazit poslední příspěvek
    29 srp 2023 16:47

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů