- Kas... olen edennyt... Nyt onnistuu jo kaikki muu paitsi se, että ei tallenna uutta tuotetta, vaikka olen tehnyt sitä varten samaan kansioon Karkkikauppa.txt:n.
Ei myöskään tulosta Karkkikaupassa olevia tuotteita (=Tulostaa pyydetyn karkin, jos se on karkkikaupassa), mitä hämmästelen. Olen yrittänyt siihen jo aivan kaikki variaatiot.
#herkku1 = {”tuote”:”Fasu”, ”valmistaja”:”Fazer”}
#herkku2 = {”tuote”:”Suukko”, ”valmistaja”:”Brunberg”}
#herkku3 = {”tuote”:”Lakupala”, ”valmistaja”:”Panda”}
List = [{"tuote":"Fasu", "valmistaja":"Fazer"},{"tuote":"Suukko", "valmistaja":"Brunberg"},{"tuote":"Lakupala", "valmistaja":"Panda"}]
print("Uuden tuotteen lisäys karkkikauppaan. Anna pyydetyt tiedot:")
tuote = input("Karkin nimi: ")
valmistaja = input("Valmistajan nimi: ")
#parasta_ennen_pvm = input("Parasta ennen pvm: ")
tiedosto = open("karkkikauppa.txt", "w") #Tiedostokahvalle nimeksi tiedosto ja uuden
#tiedoston avaaminen kirjoittamista varten.
#Pyyntö kirjoittaa yllä pyydetyt tiedot tiedostoon riveittäin.
tiedosto.write(tuote "\n")
tiedosto.write(valmistaja "\n")
#tiedosto.write(parasta_ennen_pvm "\n")
tiedosto.close() #Tiedoston sulkeminen.
tiedosto = open("karkkikauppa.txt", "r") #Tiedoston avaaminen lukemista varten.
while True:
print("Anna valitsemasi karkin nimi, niin tulostan sen, jos se löytyy karkkikaupasta.")
print("Komennolla Kaikki tulostetaan kaikki karkkikaupan karkit.")
print("komennolla Poistu, tämä ohjelma loppuu.")
valinta = input()
if valinta == "Poistu": #Ohjelmasta poistuminen.
break
elif valinta == "Kaikki": #Kaikkien karkkikaupan karkkien tulostaminen.
for x in List:
print(x["tuote"])
elif valinta in List: #Tulostaa pyydetyn karkin, jos se on karkkikaupassa.
print(x[valinta])
else:
print("Syötteesi oli virheellinen, tai tätä karkkia ei ole tässä karkkikaupassa.")
#Jos kirjoitat pienellä etukirjaimella Poistu, tai Kaikki, niin antaa silloinkin
#tuon viimeisen printin: Syötteesi oli virheellinen...
tiedosto.close() #Suljetaan tiedosto. - Kiitos! Yritän miettiä tätä.