Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Otázka mi vrací text místo čísla

Nazdárek
Chtěl bych se zeptat nakých programátoru, co dělám špatne.
Mam kód který vrátí hodnotu kterou zadá uživatel , když je to text tak to funguje, ale číslo už nefunguje.
Nefunguje myslím to, že když zadám číslo, tak mi to číslo sice vrátí ale jako text, kde je chyba ? Pak když tu proměnou chci použít tak mi to vyhazuje chyby, třeba u počítání .
Není divu. Název "dvanáct + 12" se špatně počítá :-)
Jestli pomuže výstrižek kódu , tak je to něco jako toto

datum-narozeni = input("Zadej datum narozeni")
jmeno-prijmeni = input("Zadej tvoje jmeno  a prijmeni")
atd
atd

No a pak když je datum narození třeba 1990 a tu proměnnou pak použiju tak mi to vypisuje chybu že jde o text, třeba když pak žádám v kódu chcu zjistit vek navštevníka - "vek = datum-narozeni - 2018 " tak už je problém.
Dikas, klidně upřesním .
Jsem jen začátecník samouk tak delám hodně chyb a vím to, tak kdyby se to obešlo bez urážení děkuji moc ;-)

Předmět Autor Datum
Mozna by nebylo naskodu napsat v cem to programujes. A nevim jestli je rozumne v nazvu promenne pouz…
Dwane Dibbley 12.10.2018 23:09
Dwane Dibbley
Podívej se na jméno tazatele. ;-) Důmyslné, že? poslední
host 13.10.2018 08:21
host
- Jak je uz uvedeno vyse, pozor jak deklarujes. _hlavne se vyhybat diaktrice. Kdyz si nejses jisty c…
COh 12.10.2018 23:17
COh

- Jak je uz uvedeno vyse, pozor jak deklarujes. _hlavne se vyhybat diaktrice.
Kdyz si nejses jisty co se ti vraci, tak muzes pouzit [type] ktery ti vrati typ tridy tvé promené (class). Jako kuprikladu:

type(Datum_Narozeni)

Ti vrati :

<class 'str'>

Obrazek : https://pc.poradna.net/files/83544-class-string-png

- Asi uz te napadlo, ze 'str' bude znamenat 'string' TEXT-ovy retezec, "input ti vzdy vrati string". Jestli chces aby jsi mel cislo na misto textu , tak tu promenou musis kovertovat ze 'string' na 'int'.
#pisu konvertovat, ale v realite vezmes ten inicialni objekt datum_narozeni, vytvoris novou hodnotu <int>, python vymaze predesli a etiketu priradi té nove vytvorené.

- Zmenou etikety z predesleho objektu na novy funguje prakticky u vsech programovacich jazyku stejne. V tvém pripade to muzes provést nasledovne:

datum_narozeni = int(datum_narozeni)

Tak mas z tvého <class 'string'> -->> <class 'int'>.
Jestli pri psani kodu dopredu vis ze bude pouzita hodnota (class) 'int', muzes to tak i primo deklarovat :

datum_narozeni = int(input('Vase datum narozeni : '))

To je v podstate celé ;-) . Ze se ti spravne vrati int a né string se muzes presvedcit sam :

Obrazek : https://pc.poradna.net/files/83545-class-int-png
# Ted muzes s vysledkem nakladat jako s cislem.

Zpět do poradny Odpovědět na původní otázku Nahoru