Diskuze: Zápis do souboru :-)

Python Python Zápis do souboru :-)

Avatar
Verča Hrnčálová:

Ahoj, snažím se získat zápočet - můj malinký program na bankomat je tudíž velmi jednoduchý a jeho hlavním cílem je jakási funkčnost...
Popis: Bankomat..zůstatek se nahrává se samostatného souboru (napsané pouze číslo)...
po výběru se musí od zůstatku odečíst vybraná částka a nový zůstatek zapsat do souboru. A právě s tímto krokem mám problém. Zkoušela jsem přes "r" a poté "w", nic...nyí zkouším přes "r+"...Hází mi tu stejnou chybu: TypeError: expected a string or other character buffer object..
Prosím o pomoc, děkuji :-)

print("Vitejte v bance Santa Clause")
soubor = open("text.txt", "r+")
zustatek =int(soubor.readline())

sance=3
while sance <=3:
    pin=int(input("Zadejte prosim PIN: "))
    if (pin==2):
        print("Spravny PIN")
    else:
        pin=int(input("Zadejte spravny PIN:"))
    break
menu = ("Dotaz na zustatek","Vybrani castky")
print(menu)
print("Stisknete 1 pro dotaz na zustatek")
print("Stiknete 2 pro vyber castky")
option = int(input("Vyberte moznost: "))
if option==1:
    print("Vas zustatek je: ",zustatek)
elif option==2:
    vybrat=int(input("Vyberte castku: \n500CZK 1000CZK 1500CZK 2000CZK 5000 CZK: "))
    if (vybrat <= zustatek):
        print("Vas vyber je: ",vybrat)
        if (vybrat in(500,1000,1500,2000,5000)):
            zustatek=zustatek-vybrat
            soubor.write(zustatek)
        print("Vas zustatek je:",zustatek)
    else:
        print("Vyberte jinou castku")
soubor.close()

\---

 
Odpovědět 10. ledna 17:11
Avatar
Tukmak
Člen
Avatar
Odpovídá na Verča Hrnčálová
Tukmak:

Ahoj, parametr funkce write musí být string (viz https://docs.python.org/…toutput.html). Takže stačí přetypovat proměnnou zustatek na string:

zustatek = str(zustatek - vybrat)
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 10. ledna 17:51
Avatar
Verča Hrnčálová:

Ahoj, dík za odpoveď :-)
to mě nenapadlo :-)

kéž by bylo vše tak jednoduché :-)

 
Nahoru Odpovědět 10. ledna 18:27
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.