- Liittynyt
- 02.05.2020
- Viestejä
- 32
Mietin, että onko kamalan hankalalasti toteutettavissa sellainen, että 'sanon asiakkaalle' tuossa alla olevan Karkkikauppa-koodini alussa, että jos et halua lisätä nyt karkkia, niin laita x-merkit pyydettyihin kohtiin (karkin nimi ja valmistajan nimi) ja pääset jatkamaan seuraavaan valikkoon. Sen jälkeen koodi hoitaisi sen, että ne x-merkit eivät tallentuisi Karkkikauppaani? Nythän ne menevät ja ne voi toki poistaa Poista-käskyllä, mutta minusta olisi hauskaa, että koodi 'ymmärtäisi' x-merkin olevan epäkelpo... Alla siis muuten toimiva koodi. Toivoisin, että joku keksisi minulle HELPON ratkaisun tuohon ongelmaan, eli niinkuin koodista näkee, en osaa vaikeita asioita, vaan aivan vasta perusjuttuja. Tiedän kyllä, että tässä Karkkikaupassa voi lisätä sellaisiakin karkkeja, joita jo on, mutta se ei ole ongelma. Se, miten saatiinkaan aikaan se, että karkin voi syöttää isoin, tai pienin kirjaimin ja ei tule herjaa, olen myös unohtanut...
List = [{"tuote":"Fasu", "valmistaja":"Fazer"},{"tuote":"Suukko", "valmistaja":"Brunberg"},{"tuote":"Lakupala", "valmistaja":"Panda"}]
#Etsitään onko List:ssä tuotetta tuote
def onkoTuotetta(tuote):
for x in List:
if x["tuote"]==tuote: return True
return False
#Etsitään tuote List:stä ja palautetaan se
def getTuote(tuote):
for x in List:
if x["tuote"]==tuote: return x
return None
print("Uuden tuotteen lisäys karkkikauppaan. Anna pyydetyt tiedot:")
tuote = input("Karkin nimi: ")
valmistaja = input("Valmistajan nimi: ")
#Lisätään uusi tuote List:aan
uusiTuote = {"tuote": tuote, "valmistaja": valmistaja}
List.append(uusiTuote)
tiedosto = open("karkkikauppa.txt", "w")
tiedosto.write(tuote + "\n")
tiedosto.write(valmistaja + "\n")
#tiedosto.write(parasta_ennen_pvm + "\n")
tiedosto.close()
tiedosto = open("karkkikauppa.txt", "r")
while True:
print("Anna valitsemasi karkin nimi, niin tulostan sen, jos se löytyy karkkikaupasta.")
print("Komennolla Kaikki tulostetaan kaikki karkkikaupan karkit.")
print("Komennolla Poista poistetaan valitsemasi karkkikaupan karkki.")
print("Komennolla Poistu, tämä ohjelma loppuu.")
valinta = input()
if valinta == "Poistu":
break
elif valinta == "Kaikki":
for x in List:
print(x["tuote"])
print(x["valmistaja"], "\n")
elif onkoTuotetta(valinta):
print(getTuote(valinta))
elif valinta == "Poista":
poistettava = input ("Minkä karkin haluat poistaa? ")
for i in range(len(List)):
if List['tuote'] == poistettava:
del List
break
print("Jäljelle jääneet karkit:\n" + ", ".join(x["tuote"] for x in List))
else:
print("Syötteesi oli virheellinen, tai tätä karkkia ei ole tässä karkkikaupassa.")
tiedosto.close() #Suljetaan tiedosto.
List = [{"tuote":"Fasu", "valmistaja":"Fazer"},{"tuote":"Suukko", "valmistaja":"Brunberg"},{"tuote":"Lakupala", "valmistaja":"Panda"}]
#Etsitään onko List:ssä tuotetta tuote
def onkoTuotetta(tuote):
for x in List:
if x["tuote"]==tuote: return True
return False
#Etsitään tuote List:stä ja palautetaan se
def getTuote(tuote):
for x in List:
if x["tuote"]==tuote: return x
return None
print("Uuden tuotteen lisäys karkkikauppaan. Anna pyydetyt tiedot:")
tuote = input("Karkin nimi: ")
valmistaja = input("Valmistajan nimi: ")
#Lisätään uusi tuote List:aan
uusiTuote = {"tuote": tuote, "valmistaja": valmistaja}
List.append(uusiTuote)
tiedosto = open("karkkikauppa.txt", "w")
tiedosto.write(tuote + "\n")
tiedosto.write(valmistaja + "\n")
#tiedosto.write(parasta_ennen_pvm + "\n")
tiedosto.close()
tiedosto = open("karkkikauppa.txt", "r")
while True:
print("Anna valitsemasi karkin nimi, niin tulostan sen, jos se löytyy karkkikaupasta.")
print("Komennolla Kaikki tulostetaan kaikki karkkikaupan karkit.")
print("Komennolla Poista poistetaan valitsemasi karkkikaupan karkki.")
print("Komennolla Poistu, tämä ohjelma loppuu.")
valinta = input()
if valinta == "Poistu":
break
elif valinta == "Kaikki":
for x in List:
print(x["tuote"])
print(x["valmistaja"], "\n")
elif onkoTuotetta(valinta):
print(getTuote(valinta))
elif valinta == "Poista":
poistettava = input ("Minkä karkin haluat poistaa? ")
for i in range(len(List)):
if List['tuote'] == poistettava:
del List
break
print("Jäljelle jääneet karkit:\n" + ", ".join(x["tuote"] for x in List))
else:
print("Syötteesi oli virheellinen, tai tätä karkkia ei ole tässä karkkikaupassa.")
tiedosto.close() #Suljetaan tiedosto.