Kirjaston teossa ongelma siten, että kirjat eivät tallennu / Pythonia harjoittelen

Osaako kukaan neuvoa helposti, kuinka voisin tehdä kirjaston siten, että kirjat vielä tallentuvat. Nyt kirjastoni on sellainen, että se hävittää kirjat, kun sen sulkee. Toivoisin tosi yksinkertaista ratkaisua, jotta ymmärtäisin.

10

164

    Vastaukset 10

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • List = [{"kirja":"Peppi Pitkätossu", "kirjailija":"Astrid Lindgren", "jv":"1945"},
      {"kirja":"Vaahteramäen Eemeli", "kirjailija":"Astrid Lindgren", "jv":"1963"},
      {"kirja":"Pikku naisia", "kirjailija":"Louisa M. Alcott", "jv":"1868"},
      {"kirja":"Annan nuoruusvuodet", "kirjailija":"L. M. Montgomery", "jv":"1908"}]

      #-----ALKAA Funktioiden esittely----------------------------------------

      #Näitä kahta funktiota tarvitaan, kun etsitään, onko kirjastossa haluttua kirjaa ja
      #kun poistetaan kirjaa.

      #Etsitään onko List:ssä kirjaa.
      def onkoKirjaa(kirja):
      for x in List:
      if x["kirja"]==kirja: return True
      return False

      #Palautetaan kirja.
      def getKirja(kirja):
      for x in List:
      if x["kirja"]==kirja: return x
      return None

      #-----LOPPUU Funktioiden esittely---------------------------------------

      print("Tervetuloa Kirjakauppaan!", "\n", "\n" #Näin saat tekstiin rivinvaihdon lisäksi välirivin.
      "Uuden kirjan lisäys Kirjakauppaan:", "\n"
      "Jos et nyt halua lisätä kirjaa, niin lisää numero nolla seuraaviin kohtiin, muutoin anna pyydetyt tiedot:")
      kirja = input("Kirjan nimi: ")
      kirjailija = input("Kirjailijan nimi: ")
      jv = input("Julkaisuvuosi: ")

      #-----ALKAA Lisätään appendilla uusi kirja------------------------------

      #Lisätään uusi tuote List:aan
      uusiKirja = {"kirja":kirja, "kirjailija":kirjailija, "jv":jv}

      if kirja != "0" and kirjailija != "0" and jv != "0": #Blokkaa pois sen, että nollat tallentuisivat uutena kirjana jne.
      List.append(uusiKirja)

      #-----LOPPUU Lisätään appendilla uusi kirja-----------------------------

      tiedosto = open("kirjasto.txt", "w") #Tiedostokahvalle nimeksi tiedosto ja uuden
      #tiedoston avaaminen kirjoittamista varten.

      #Pyyntö kirjoittaa yllä pyydetyt tiedot tiedostoon riveittäin.
      tiedosto.write(kirja "\n")
      tiedosto.write(kirjailija "\n")
      tiedosto.write(jv "\n")

      tiedosto.close() #Tiedoston sulkeminen.

      tiedosto = open("kirjasto.txt", "r") #Tiedoston avaaminen lukemista varten.

      while True:

      print("Anna valitsemasi kirjan nimi, niin tulostan sen, jos se löytyy kirjastosta.")
      print("Komennolla Kaikki tulostetaan kaikki kirjaston kirjat.")
      print("Komennolla Poista poistetaan valitsemasi kirjaston kirja.")
      print("Komennolla Poistu, tämä kirjasto-ohjelma sulkeutuu.")

      valinta = input().capitalize() #Asiakas voi syöttää vastauksensa, joka alkaa pienellä kirjaimella esim. poistu -> Poistu

      if valinta == "Poistu": #Ohjelmasta poistuminen.
      break

      elif valinta == "Kaikki": #Kaikkien kirjaston kirjojen tulostaminen.
      for x in List:
      print(x["kirja"])
      print(x["kirjailija"])
      print(x["jv"], "\n") #\n erottelee tulokset toisistaan = tyhjä rivi

      elif onkoKirjaa(valinta): #Tulostaa pyydetyn kirjan, jos se on kirjastossa.
      print(getKirja(valinta))

      #elif valinta == "Poista":
      elif onkoKirjaa(valinta): #Etsitään, onko List:ssä kirjaa.
      print(getKirja(valinta)) #Palautetaan kirja.
      elif valinta == "Poista": #Poistaa pyydetyn kirjan kirjastosta.
      poistettava = input ("Minkä kirjan haluat poistaa? ")
      for i in range(len(List)):
      if List[i]['kirja'] == poistettava:
      del List[i]
      break

      print("Jäljelle jääneet kirjat:\n" ", ".join(x["kirja"] for x in List))

      else:

      print("Syötteesi oli virheellinen, tai tätä kirjaa ei ole tässä kirjastossa.")

      tiedosto.close() #Suljetaan tiedosto.

    • Anonyymi

      Tee ohjelman käynnistykseen latausrutiini, joka lukee tiedoston. Ja siirrä nuo List:in tiedot siihen tiedostoon, jos haluat niiden olevan mukana.

      • Mutta miten se latausrutiini tehdään...?


      • Anonyymi
        Katjaana kirjoitti:

        Mutta miten se latausrutiini tehdään...?

        Muuta tallennusrutiini tallentamaan yksi kirja yhdelle riville eri kentät pilkulla erotettuna. Sen jälkeen luet tiedoston avausvaiheessa samaan muotoon mitä on esimerkkisi List-muuttujassa.

        Esimerkki, tiedosto.txt:
        --
        kirja1,kirjailija1,jv1
        kirja2,kirjailija2,jv2
        kirja3,kirjailija3,jv3

        Luetaan vaikka näin ja tulostetaan:
        --
        def lataaTiedot(tiedosto):
            lista = []
                with open(tiedosto, 'r') as tiedostoObjekti:
                    for rivi in tiedostoObjekti:
                    kirja = rivi.replace("\n","").split(',')
                    if len(kirja) == 3:
                        lista.append({"kirja": kirja[0], "kirjailija": kirja[1], "jv": kirja[2]})
        return lista

        print(lataaTiedot('tiedosto.txt')) # testitulostus
        --
        tulostaa:
        [{'kirja': 'kirja1', 'kirjailija': 'kirjailija1', 'jv': 'jv1'}, {'kirja': 'kirja2', 'kirjailija': 'kirjailija2', 'jv': 'jv2'}, {'kirja': 'kirja3', 'kirjailija': 'kirjailija3', 'jv': 'jv3'}]


      • Anonyymi kirjoitti:

        Muuta tallennusrutiini tallentamaan yksi kirja yhdelle riville eri kentät pilkulla erotettuna. Sen jälkeen luet tiedoston avausvaiheessa samaan muotoon mitä on esimerkkisi List-muuttujassa.

        Esimerkki, tiedosto.txt:
        --
        kirja1,kirjailija1,jv1
        kirja2,kirjailija2,jv2
        kirja3,kirjailija3,jv3

        Luetaan vaikka näin ja tulostetaan:
        --
        def lataaTiedot(tiedosto):
            lista = []
                with open(tiedosto, 'r') as tiedostoObjekti:
                    for rivi in tiedostoObjekti:
                    kirja = rivi.replace("\n","").split(',')
                    if len(kirja) == 3:
                        lista.append({"kirja": kirja[0], "kirjailija": kirja[1], "jv": kirja[2]})
        return lista

        print(lataaTiedot('tiedosto.txt')) # testitulostus
        --
        tulostaa:
        [{'kirja': 'kirja1', 'kirjailija': 'kirjailija1', 'jv': 'jv1'}, {'kirja': 'kirja2', 'kirjailija': 'kirjailija2', 'jv': 'jv2'}, {'kirja': 'kirja3', 'kirjailija': 'kirjailija3', 'jv': 'jv3'}]

        Kiitos! Teenkö ensin resurssienhallintaan tiedosto.txt:n, johon syötän 'alku'kirjaston? Ja sinne ne uudetkin sitten päätyvät?


      • Anonyymi
        Katjaana kirjoitti:

        Kiitos! Teenkö ensin resurssienhallintaan tiedosto.txt:n, johon syötän 'alku'kirjaston? Ja sinne ne uudetkin sitten päätyvät?

        Mikä tahansa tekstieditori käy.

        Kannattaa käyttää tiedostojen käsittelyssä "with open"-tapaa, niin ei tarvitse huolehtia sulkemisesta.

        https://www.pythonforbeginners.com/files/with-statement-in-python


      • Anonyymi kirjoitti:

        Mikä tahansa tekstieditori käy.

        Kannattaa käyttää tiedostojen käsittelyssä "with open"-tapaa, niin ei tarvitse huolehtia sulkemisesta.

        https://www.pythonforbeginners.com/files/with-statement-in-python

        Kiitos jälleen. Koitan tätä ohjetta tänään-huomenna! Josko se tästä muotoutuisi. Olisi kiva saada tehtyä (vaikkakin aloittelijan tyyliin) jotain 'pysyvää'!


      • Katjaana kirjoitti:

        Kiitos jälleen. Koitan tätä ohjetta tänään-huomenna! Josko se tästä muotoutuisi. Olisi kiva saada tehtyä (vaikkakin aloittelijan tyyliin) jotain 'pysyvää'!

        Voi hyvänen aika, että tämä on VAI-KE-AA!!! Laitoin tuonne alemmaksi uuden koodini. Mutta kun sain alun toimimaan, niin nyt se herjaa
        #Etsitään onko List:ssä kirjaa -kohdan riviä 41: for x in List

        Mikä tuossa x:ssä nyt on vikana, kun aiemmin siinä ei ollut??? Ja 99-rivillä on myös jotain sanomista...



        #_Tämä on tehtäväharjoitukseni, joka tallentaa, jos osaan sen tehdä.

        tiedosto = open("kirjasto.txt", "a") #_Avataan tiedosto, johon tallennetaan.

        #_Poistin alla olevat, sillä olivat kovakoodattuja.
        #_List = [{"kirja":"Peppi Pitkätossu", "kirjailija":"Astrid Lindgren", "jv":"1945"},
        #_{"kirja":"Vaahteramäen Eemeli", "kirjailija":"Astrid Lindgren", "jv":"1963"},
        #_{"kirja":"Pikku naisia", "kirjailija":"Louisa M. Alcott", "jv":"1868"},
        #_{"kirja":"Annan nuoruusvuodet", "kirjailija":"L. M. Montgomery", "jv":"1908"}]

        #_Alla oleva tallennusrutiini tallentaa yhden kirjan yhdelle riville.
        List = [{"kirja1", "kirjailija1", "jv1"
        "kirja2", "kirjailija2", "jv2"
        "kirja3", "kirjailija3", "jv3"}]

        #_Kirjat luetaan tiedostoon talteen alla olevalla tavalla.
        def lataaTiedot(tiedosto):
        lista = []
        with open(tiedosto, 'r') as tiedostoObjekti:
        for rivi in tiedostoObjekti:
        kirja = rivi.replace("\n","").split(',')
        if len(kirja) == 3:
        lista.append({"kirja": kirja[0], "kirjailija": kirja[1], "jv": kirja[2]})
        return lista

        #_Kirjat tulostetaan alla olevalla tavalla.
        print(lataaTiedot("kirjasto.txt"))
        [{'kirja': 'kirja1', 'kirjailija': 'kirjailija1', 'jv': 'jv1'}, {'kirja': 'kirja2', 'kirjailija':
        'kirjailija2', 'jv': 'jv2'}, {'kirja': 'kirja3', 'kirjailija': 'kirjailija3', 'jv': 'jv3'}]

        tiedosto.close() #_Suljetaan tiedosto, johon on tallennettu.

        #-----ALKAA Funktioiden esittely----------------------------------------

        #Näitä kahta funktiota tarvitaan, kun etsitään, onko kirjastossa haluttua kirjaa ja
        #kun poistetaan kirjaa.

        #Etsitään onko List:ssä kirjaa.
        def onkoKirjaa(kirja):
        for x in List:
        if x["kirja"]==kirja: return True
        return False

        #Palautetaan kirja.
        def getKirja(kirja):
        for x in List:
        if x["kirja"]==kirja: return x
        return None

        #-----LOPPUU Funktioiden esittely---------------------------------------

        print("Tervetuloa Kirjakauppaan!", "\n", "\n" #Näin saat tekstiin rivinvaihdon lisäksi välirivin.
        "Uuden kirjan lisäys Kirjakauppaan:", "\n"
        "Jos et nyt halua lisätä kirjaa, niin lisää numero nolla seuraaviin kohtiin, muutoin anna pyydetyt tiedot:")
        kirja = input("Kirjan nimi: ")
        kirjailija = input("Kirjailijan nimi: ")
        jv = input("Julkaisuvuosi: ")

        #-----ALKAA Lisätään appendilla uusi kirja------------------------------

        #Lisätään uusi tuote List:aan
        uusiKirja = {"kirja":kirja, "kirjailija":kirjailija, "jv":jv}

        if kirja != "0" and kirjailija != "0" and jv != "0": #Blokkaa pois sen, että nollat tallentuisivat uutena kirjana jne.
        List.append(uusiKirja)

        #-----LOPPUU Lisätään appendilla uusi kirja-----------------------------

        tiedosto = open("kirjasto.txt", "w") #Tiedostokahvalle nimeksi tiedosto ja uuden
        #tiedoston avaaminen kirjoittamista varten.

        #Pyyntö kirjoittaa yllä pyydetyt tiedot tiedostoon riveittäin.
        tiedosto.write(kirja "\n")
        tiedosto.write(kirjailija "\n")
        tiedosto.write(jv "\n")

        tiedosto.close() #Tiedoston sulkeminen.

        tiedosto = open("kirjasto.txt", "r") #Tiedoston avaaminen lukemista varten.

        while True:

        print("Anna valitsemasi kirjan nimi, niin tulostan sen, jos se löytyy kirjastosta.")
        print("Komennolla Kaikki tulostetaan kaikki kirjaston kirjat.")
        print("Komennolla Poista poistetaan valitsemasi kirjaston kirja.")
        print("Komennolla Poistu, tämä kirjasto-ohjelma sulkeutuu.")

        valinta = input().capitalize() #Asiakas voi syöttää vastauksensa, joka alkaa pienellä kirjaimella esim. poistu -> Poistu

        if valinta == "Poistu": #Ohjelmasta poistuminen.
        break

        elif valinta == "Kaikki": #Kaikkien kirjaston kirjojen tulostaminen.
        for x in List:
        print(x["kirja"])
        print(x["kirjailija"])
        print(x["jv"], "\n") #\n erottelee tulokset toisistaan = tyhjä rivi

        elif onkoKirjaa(valinta): #Tulostaa pyydetyn kirjan, jos se on kirjastossa.
        print(getKirja(valinta))

        #elif valinta == "Poista":
        elif onkoKirjaa(valinta): #Etsitään, onko List:ssä kirjaa.
        print(getKirja(valinta)) #Palautetaan kirja.
        elif valinta == "Poista": #Poistaa pyydetyn kirjan kirjastosta.
        poistettava = input ("Minkä kirjan haluat poistaa? ")
        for i in range(len(List)):
        if List[i]['kirja'] == poistettava:
        del List[i]
        break

        print("Jäljelle jääneet kirjat:\n" ", ".join(x["kirja"] for x in List))

        else:

        print("Syötteesi oli virheellinen, tai tätä kirjaa ei ole tässä kirjastossa.")

        tiedosto.close() #Suljetaan tiedosto.


      • Katjaana kirjoitti:

        Voi hyvänen aika, että tämä on VAI-KE-AA!!! Laitoin tuonne alemmaksi uuden koodini. Mutta kun sain alun toimimaan, niin nyt se herjaa
        #Etsitään onko List:ssä kirjaa -kohdan riviä 41: for x in List

        Mikä tuossa x:ssä nyt on vikana, kun aiemmin siinä ei ollut??? Ja 99-rivillä on myös jotain sanomista...



        #_Tämä on tehtäväharjoitukseni, joka tallentaa, jos osaan sen tehdä.

        tiedosto = open("kirjasto.txt", "a") #_Avataan tiedosto, johon tallennetaan.

        #_Poistin alla olevat, sillä olivat kovakoodattuja.
        #_List = [{"kirja":"Peppi Pitkätossu", "kirjailija":"Astrid Lindgren", "jv":"1945"},
        #_{"kirja":"Vaahteramäen Eemeli", "kirjailija":"Astrid Lindgren", "jv":"1963"},
        #_{"kirja":"Pikku naisia", "kirjailija":"Louisa M. Alcott", "jv":"1868"},
        #_{"kirja":"Annan nuoruusvuodet", "kirjailija":"L. M. Montgomery", "jv":"1908"}]

        #_Alla oleva tallennusrutiini tallentaa yhden kirjan yhdelle riville.
        List = [{"kirja1", "kirjailija1", "jv1"
        "kirja2", "kirjailija2", "jv2"
        "kirja3", "kirjailija3", "jv3"}]

        #_Kirjat luetaan tiedostoon talteen alla olevalla tavalla.
        def lataaTiedot(tiedosto):
        lista = []
        with open(tiedosto, 'r') as tiedostoObjekti:
        for rivi in tiedostoObjekti:
        kirja = rivi.replace("\n","").split(',')
        if len(kirja) == 3:
        lista.append({"kirja": kirja[0], "kirjailija": kirja[1], "jv": kirja[2]})
        return lista

        #_Kirjat tulostetaan alla olevalla tavalla.
        print(lataaTiedot("kirjasto.txt"))
        [{'kirja': 'kirja1', 'kirjailija': 'kirjailija1', 'jv': 'jv1'}, {'kirja': 'kirja2', 'kirjailija':
        'kirjailija2', 'jv': 'jv2'}, {'kirja': 'kirja3', 'kirjailija': 'kirjailija3', 'jv': 'jv3'}]

        tiedosto.close() #_Suljetaan tiedosto, johon on tallennettu.

        #-----ALKAA Funktioiden esittely----------------------------------------

        #Näitä kahta funktiota tarvitaan, kun etsitään, onko kirjastossa haluttua kirjaa ja
        #kun poistetaan kirjaa.

        #Etsitään onko List:ssä kirjaa.
        def onkoKirjaa(kirja):
        for x in List:
        if x["kirja"]==kirja: return True
        return False

        #Palautetaan kirja.
        def getKirja(kirja):
        for x in List:
        if x["kirja"]==kirja: return x
        return None

        #-----LOPPUU Funktioiden esittely---------------------------------------

        print("Tervetuloa Kirjakauppaan!", "\n", "\n" #Näin saat tekstiin rivinvaihdon lisäksi välirivin.
        "Uuden kirjan lisäys Kirjakauppaan:", "\n"
        "Jos et nyt halua lisätä kirjaa, niin lisää numero nolla seuraaviin kohtiin, muutoin anna pyydetyt tiedot:")
        kirja = input("Kirjan nimi: ")
        kirjailija = input("Kirjailijan nimi: ")
        jv = input("Julkaisuvuosi: ")

        #-----ALKAA Lisätään appendilla uusi kirja------------------------------

        #Lisätään uusi tuote List:aan
        uusiKirja = {"kirja":kirja, "kirjailija":kirjailija, "jv":jv}

        if kirja != "0" and kirjailija != "0" and jv != "0": #Blokkaa pois sen, että nollat tallentuisivat uutena kirjana jne.
        List.append(uusiKirja)

        #-----LOPPUU Lisätään appendilla uusi kirja-----------------------------

        tiedosto = open("kirjasto.txt", "w") #Tiedostokahvalle nimeksi tiedosto ja uuden
        #tiedoston avaaminen kirjoittamista varten.

        #Pyyntö kirjoittaa yllä pyydetyt tiedot tiedostoon riveittäin.
        tiedosto.write(kirja "\n")
        tiedosto.write(kirjailija "\n")
        tiedosto.write(jv "\n")

        tiedosto.close() #Tiedoston sulkeminen.

        tiedosto = open("kirjasto.txt", "r") #Tiedoston avaaminen lukemista varten.

        while True:

        print("Anna valitsemasi kirjan nimi, niin tulostan sen, jos se löytyy kirjastosta.")
        print("Komennolla Kaikki tulostetaan kaikki kirjaston kirjat.")
        print("Komennolla Poista poistetaan valitsemasi kirjaston kirja.")
        print("Komennolla Poistu, tämä kirjasto-ohjelma sulkeutuu.")

        valinta = input().capitalize() #Asiakas voi syöttää vastauksensa, joka alkaa pienellä kirjaimella esim. poistu -> Poistu

        if valinta == "Poistu": #Ohjelmasta poistuminen.
        break

        elif valinta == "Kaikki": #Kaikkien kirjaston kirjojen tulostaminen.
        for x in List:
        print(x["kirja"])
        print(x["kirjailija"])
        print(x["jv"], "\n") #\n erottelee tulokset toisistaan = tyhjä rivi

        elif onkoKirjaa(valinta): #Tulostaa pyydetyn kirjan, jos se on kirjastossa.
        print(getKirja(valinta))

        #elif valinta == "Poista":
        elif onkoKirjaa(valinta): #Etsitään, onko List:ssä kirjaa.
        print(getKirja(valinta)) #Palautetaan kirja.
        elif valinta == "Poista": #Poistaa pyydetyn kirjan kirjastosta.
        poistettava = input ("Minkä kirjan haluat poistaa? ")
        for i in range(len(List)):
        if List[i]['kirja'] == poistettava:
        del List[i]
        break

        print("Jäljelle jääneet kirjat:\n" ", ".join(x["kirja"] for x in List))

        else:

        print("Syötteesi oli virheellinen, tai tätä kirjaa ei ole tässä kirjastossa.")

        tiedosto.close() #Suljetaan tiedosto.

        Ja koodini ensimmäinen rivi siis on:

        #_Tämä on tehtäväharjoitukseni, joka tallentaa, jos osaan sen tehdä.


      • Katjaana kirjoitti:

        Ja koodini ensimmäinen rivi siis on:

        #_Tämä on tehtäväharjoitukseni, joka tallentaa, jos osaan sen tehdä.

        Ja herja rivillä 41 on siis: TypeError: 'set' object is not subscriptable

        Enkä saa sitä poistumaan millään, tai sitten herja siirtyy toiseen paikkaan...


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mikä on totta mikä ei?

      Onko juoru vai ei että nimeltä mainitsematon henkilö on tehnyt naiselle/naisille jotain joka on väärin?
      Kuhmo
      21
      2164
    2. Päivän aivopieru Trumpilta

      Trump julisti sodan hyttysiä vastaan. Myös punkit ovat Trumpin sodan kohteena. Eikö vieläkään USA:n kansa tajua tuon uko
      Maailman menoa
      75
      1291
    3. Lopetetaanko tämä

      Juttu ja mennään eteenpäin? Pystytkö?
      Ikävä
      132
      948
    4. Just saying

      Mies joka antaa naiselle turvallisen olon, on seksikäs. Ei kieroja kikkoja ja haluaa olla vain sen yhden naisen mies.
      Ikävä
      142
      727
    5. Voisin antaa sulle nyt

      Halin❤️
      Ikävä
      54
      656
    6. Löytyikö syy miksi Martina on Muhiksen kanssa

      Saipa naurut Gekkosen kuvasta, missä ovat ravintola Hookissa Immu fight night ottelun jälkeen, Muhoksella pullottaa hirv
      Kotimaiset julkkisjuorut
      95
      642
    7. Janpen Thai lopettanut, miksiköhän

      Hyvää apetta teki.
      Suomussalmi
      13
      577
    8. Jos selviäisi että kaivattusi

      Olisi savant asperger? Rakastaisitko vielä? Savant-lahjakkuus olisi kapea-alaista neroutta liittyen mekanisiin ja tilan
      Ikävä
      93
      575
    9. Jorma Uotinen läväytti härskin heiton - Paljastus uudesta TTK-romanssista?

      Tuomari Jorma Uotisen linja on välillä hyvinkin rohkea TTK:ssa. Hän näpäytti Jaakko Parkkalille ja Kastanja Rauhalalle v
      Tanssii tähtien kanssa
      11
      573
    10. Tosi kiva on

      Joo. Mitä olisit menettänyt jos olisit paljastanut itsesi?
      Ikävä
      65
      551
    11. Jokin ei täsmää

      Joskus yksi vuosiluku saa katsomaan koko tarinaa uudestaan. Löysin gradun. Matematiikka ei oikein täsmää siihen, mitä mi
      Ikävä
      298
      546
    12. Toivotko vielä viestiä

      Minulta? En rohkene enää ottaa yhteyttä, kun varmasti jo uusia naisia elämässä. Nolaisin vain itseni.
      Ikävä
      44
      539
    13. Tehdään yhdessä itsestämme

      Parhaat versiot❤️ Se vaatii molemmilta hyvää itsetuntoa!
      Ikävä
      42
      525
    14. Oliko Jani Halmeen aika jo tippua TTK:sta?

      Jani Halme ja Claudia Ketonen joutuivat jättämään TTK:n. Halme ja Ketonen saivat viimeiseksi jäänestä tanssista, sambas
      Tanssii tähtien kanssa
      28
      498
    15. Kuka kaipaa T m?

      Kerro nainen kirjaimesi vaan... Haluan miettiä kuka tulee ekana mieleeni.. kuin kurkistus tunteiden meren pinnalle, jota
      Ikävä
      36
      490
    16. Olen ajellut Dieseleillä yli 50 vuotta.

      Enkä ole koskaan kaivannut sähköautoa.
      Hybridi- ja sähköautot
      122
      478
    17. Mitä tunteita

      Sulla vielä on?
      Ikävä
      76
      473
    18. Miksi jotku naiset on niin tyhmiä

      Että elättelevät turhaa toivoa toisen kustannuksella. Onko ne kaikki kaappilesboja vai mikä niitä vaivaa? Sitten itketä
      Ikävä
      51
      457
    19. Kerro muuten miksi

      Estit somessa?
      Ikävä
      41
      444
    20. Vaikea on tämän

      Jälkeen suhtautua sinuun ilman ettei muista kirjoituksiasi.
      Ikävä
      58
      437
    Aihe