[python-nl] Newbie vraag werken met tabeldata
matthijs kadijk
matthijs at kadijk.com
Thu Feb 25 12:48:44 CET 2010
Hallo Anthony,
Ik ben een newbie in Python (en voor het eerst programmeren) en zit
met de volgende (simpele) uitdaging, maar ik zie het licht even niet.
Wie kan mij helpen?
welkom op de list.
Ik lees dat je van plan bent een database te gebruiken in ja applicatie. Nu
zijn deze dingen vrij handig voor het opslaan van tabellen en het doorzoeken
ervan. Zeker als de tabellen groter worden, is dat m.i. de beste aanpak. Het
zoeken naar een percentage bij een gegeven bedrag laat je dan aan de DB
over, en door de juiste indexen aan te leggen, gaat dat ook lekker snel.
Dus bv
zoek_sql = """
SELECT * FROM korting
WHERE korting.van > %(zoek_prijs)d
AND korting.tot < %(zoek_prijs)d""" % dict(zoek_prijs=1755)
Als je geen DB kan of wilt gebruiken, dan zou ik me geen zorgen maken over
efficentie, immers wat je kan doen is dan sowieso beperkt tot wat er in het
(werk) geheugen van je computer past.
Je zou een lijst van dictionary's kunnen gebruiken:
korting = []
korting.append( dict(van=15000, tot=16500, percentage=25) )
korting.append( dict(van=16500, tot=23500, percentage=20) )
etc.
lees de waardes bv in vanuit een CSV bestand ...
zoeken kan nu bv zo (niet efficiënt ...)
zoek_bedrag = 16200
gevonden = None
for rec in korting:
if rec.get('van') < zoek_bedrag and zoek_betrag < rec.get('tot'):
gevonden = rec
break # spring uit de loop als we het juiste record gevonden hebben ..
if gevonden:
percentage = rec.get('percentage')
Matthijs Kadijk
http://tng.appspot.com Matthijs op Kadijk.com
------------- volgend deel ------------
Een HTML-bijlage is gescrubt...
URL: <http://mail.python.org/pipermail/python-nl/attachments/20100225/14d6831e/attachment.html>
More information about the Python-nl
mailing list