Article View: pl.comp.lang.python
Article #3Re: Przechowywanie danych
From: Wojtek Walczak
Date: Fri, 29 Nov 2002 15:33
Date: Fri, 29 Nov 2002 15:33
79 lines
2720 bytes
2720 bytes
Dnia Thu, 28 Nov 2002 21:21:41 +0100, Krzysztof Stachlewski napisał(a):
> Ale tak poza tym, to XML się nadaje. Chyba, że miałbyś
> zamiar przechowywać dane w bazie danych - ale to byłaby dopiero
> armata... Może jakaś plikowa baza danych byłaby dobra?
W sumie to mozna wykorzystac pythonowa idee modulow.
Ot, maly przyklad:
--- py.py ---
#!/usr/bin/env python
import sys, os.path
import blah
filename = "blah.py"
tmp_list = []
def zapisz_do_blah():
global tmp_list
try:
if os.path.isfile(filename):
os.unlink(filename)
w = open(filename, 'w+')
w.write("lista = [\n")
for i in tmp_list:
i = ' \''+i+'\''+','+'\n'
w.write(i)
w.write("]\n")
w.close()
except:
print 'zapisz_do_blah() error:',sys.exc_info()[1]
sys.exit()
def czytaj_z_blah():
global tmp_list
blah = reload(__import__(filename[:4]))
tmp_list = []
for i in blah.lista:
tmp_list.append(i)
return tmp_list
def dodaj_do_blah(x):
global tmp_list
tmp_list.append(x)
zapisz_do_blah()
def usun_z_blah(x):
global tmp_list
tmp_list.remove(x)
return tmp_list
def main():
global tmp_list
czytaj_z_blah()
dodaj_do_blah("gminiczek")
print czytaj_z_blah()
zapisz_do_blah()
if __name__ == "__main__":
main()
-------------
Tak wiec robimy plik *.py (tutaj blah.py), ktory dla pythona jest
modulem, a dla nas baza danych (w tym przypadku jest to lista, ale
smialo mozna kombinowac ze slownikami). W sumie to taka metoda jest
prosta, ale tworzysz ja od podstaw, wiec trzeba od paru rzeczy pomyslec,
zanim bedzie to mozna uznac za stabilne.
HTH.
--
[ ] gminick (at) underground.org.pl http://gminick.linuxsecurity.pl/ [ ]
[ "Po prostu lubie poranna samotnosc, bo wtedy kawa smakuje najlepiej." ]
Technical Details
Message-ID:
<slrnaufa97.99.gminick@hannibal.localdomain>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.onet.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mailReferences:
<slrnaucobt.oo.m00se@vilya.fnord.pl> <as5tsi$mtb$1@SunSITE.icm.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.onet.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail From: Wojtek Walczak <gminick@hacker.pl> Newsgroups: pl.comp.lang.python Subject: Re: Przechowywanie danych Date: Fri, 29 Nov 2002 15:33:05 +0000 (UTC) Organization: tp.internet - http://www.tpi.pl/ Lines: 79 Message-ID: <slrnaufa97.99.gminick@hannibal.localdomain> References: <slrnaucobt.oo.m00se@vilya.fnord.pl> <as5tsi$mtb$1@SunSITE.icm.edu.pl> NNTP-Posting-Host: pb135.kepno.sdi.tpnet.pl Mime-Version: 1.0 X-Trace: news.tpi.pl 1038583985 6197 213.25.218.135 (29 Nov 2002 15:33:05 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Fri, 29 Nov 2002 15:33:05 +0000 (UTC) User-Agent: slrn/0.9.7.3 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit