Új hozzászólás Aktív témák
-
Siriusb
veterán
Pitonikus kérdés:

Adott egy táblázat, melyben szerkesztés során minden sorban egy vagy több oszlop értékét is lehet módosítani. Az adatokat egy sqlite3 adatbázisban tárolom.
Na már most, nem írok ki minden változást azonnal az adatbázisba, hanem egy tömbben, helyesebben list-ben eltárolom az sql kifejezést és az értékeket, s csak a legvégén rögzítem az új értékeket az adatbázisban.
Azonban mi van akkor, ha agyatlanul ugyanazon sor ugyanazon oszlopának értékét tízszer módosítom, mert bizonytalan vagyok, vagy mert tetszik a billentyűzet hangja? Ebben az esetben 9 sql kifejezés hajtódna végre teljesen feleslegesen, amikor csak egynek, a list-ben a legutolsónak kellene csak. Tehát a kérdés, mi a legpraktikusabb módja annak, hogy egy listából kitöröljem az egyforma (illetve csak egy elemében eltérő) lista elemeket, kizárólag az utolsót meghagyva. Tehát ebben:
[
[name1, val1, rowid1],
[name2, val2, rowid2],
[name1, val3, rowid1]
]
az első és harmadik elem "egyforma", így az első elem törlendő.Nekem csak az a megoldás jut eszembe, hogy slice készül a tömbből, soronként végigmegyek és összehasonlítom az eredeti tömbbel a sort, feljegyzem az indexeket és a ciklus végén az utolsó index kivételével törlöm az összest. figyelve arra, hogy egy-egy törlés után módosul a soronkövetkező tényleges index száma.
Egyébként más úton gondolkozva simán megoldhatnám úgy is (lévén kis mennyiségű adat), hogy az egész modelt (ListStore) visszaírom egy az egybe az adatbázisba, na de az elég csúnyácska megoldás lenne.
Új hozzászólás Aktív témák
- Kormányok / autós szimulátorok topikja
- OTP Bank topic
- Crimson Desert - Amikor már azt hitted mindent láttál!
- iPhone topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Battlefield 6
- Okos Otthon / Smart Home
- Samsung Galaxy A52s 5G - jó S-tehetség
- Mini-ITX
- World of Tanks - MMO
- További aktív témák...
- Gamer PC - i9 14900K, RTX 5070 és 32gb RAM + GARANCIA
- ÚJ STEELSERIES Arctis Nova Pro Wireless Playstation fekete
- Dell Precision 5560 i7 32GB RAM 512GB SSD NVIDIA RTX A2000 FHD+
- Mafia The old Country Ps5 dobozos, hibátlan!
- SZINTE ÚJ , 2ÉV GARANCIA - PS5 SLIM DIGIT 825GB + PS PORTAL BLACK (Keveset használt eszközök)
- Surface Pro 7+ i5-1135G7 16GB 1000GB 1 év garancia
- Eladó MacBook Pro 13 (2020) i7 2.3GHz / 16GB / 512GB Asztroszürke
- Bomba ár! Dynabook Portege X30-L-K - i7-1260P I 8GB I 256SSD I 13,3" FHD I Cam I W11 I Gari!
- Lenovo Thinkpad X1 Yoga 6th Gen. i7 11th, 32GB RAM 27% ÁFÁS (0328)
- iPhone 13 Pro Max 128GB 100% (1év Garancia)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


