🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.python
25 messages
25 total messages Started by Pawel J Maczewski Wed, 04 Dec 2002 06:37
gzip
#156
Author: Pawel J Maczewski
Date: Wed, 04 Dec 2002 06:37
9 lines
1103 bytes
Czesc,
  Kolejne moje glupiutkie pytanie: chcialbym strukture danych ktora
zapisuje do pliku compresowac (oszczednosc miejsca w moim przypadku ok
80%). Wiec mam pytanie: czy istnieje jakis modul to umozliwiajacy
(to=kompresje i dekompresje) bezposrednio z poziomu pythona? czy tez mam
import os i przez wywolanie komend systemowych dzialac? ;)

pozdrawiam
  Kender
Re: gzip
#157
Author: Adam Karpierz
Date: Wed, 04 Dec 2002 07:06
51 lines
2455 bytes
Uzytkownik "Pawel J Maczewski" <pjmacz@slcj.uw.edu.pl> napisal:

> Czesc,
>   Kolejne moje glupiutkie pytanie:

Nie ma glupkowatych pytan.
Sa jedynie glupkowate odpowiedzi (j/n).

> chcialbym strukture danych ktora
> zapisuje do pliku compresowac (oszczednosc miejsca w moim przypadku ok
> 80%). Wiec mam pytanie: czy istnieje jakis modul to umozliwiajacy
> (to=kompresje i dekompresje) bezposrednio z poziomu pythona? czy tez mam
> import os i przez wywolanie komend systemowych dzialac? ;)

A poszukal w standardowej bibliotece chociaz ?:)
Widnieje tam sobie gzip.py.

Ale zgoda ze nie ma wprost 'odgzipowania' archiwum
wiec zalaczam co trzeba (sprawdzone pobieznie):

import os
import gzip

def ungzip(archive, dstDir=None):
    outfile = os.path.basename(archive)
    if outfile.endswith('.gz'):
        outfile = os.path.splitext(outfile)[0]
    if dstDir is not None:
        outfile = os.path.join(dstDir, outfile)
    istream = gzip.open(archive, 'rb')
    try:
        if os.path.isfile(outfile):
            os.remove(outfile)
        ostream = open(outfile, 'wb')
        try:
            while 1:
                buff = istream.read(524288)
                if not buff:
                    break
                ostream.write(buff)
        except:
            ostream.close()
            if os.path.isfile(outfile):
                os.remove(outfile)
            raise
        ostream.close()
    finally:
        istream.close()

Adam Karpierz
karpierz@alpha.pl
Re: gzip
#158
Author: Adam Karpierz
Date: Wed, 04 Dec 2002 07:14
48 lines
2431 bytes
Użytkownik "Adam Karpierz" <karpierz@_NOSPAM_alpha.pl> napisał:

Zreszta dolacze rownie inny "przydatek":

import zipfile
import os

def unzip(archive, dstDir=None):
    if dstDir is None: dstDir = ''

    if not os.access (archive, os.R_OK):
        raise 'Cannot access %s' % archive

    if not zipfile.is_zipfile(archive):
        raise '%s: not a zipfile' % archive

    zfile = zipfile.ZipFile(archive)
    for name in zfile.namelist():
        outfile = os.path.join(dstDir, name)
        try:
            os.makedirs(os.path.dirname(outfile))
        except:
            if not os.path.isdir(os.path.dirname(outfile)):
                raise
        if os.path.basename(outfile).strip():
            if os.path.isfile(outfile):
                os.remove(outfile)
            ostream = open(outfile, "wb")
            try:
                ostream.write(zfile.read(name))
            except:
                ostream.close()
                if os.path.isfile(outfile):
                    os.remove(outfile)
                raise
            ostream.close()
        info = zfile.getinfo(name)
        date = info.date_time
        try:
            year, month, day, hour, min, sec = date
            timestamp = time.mktime((year, month, day, hour, min, sec, 0,
0, -1))
            os.utime(outfile, (timestamp, timestamp))
        except:
            pass # ignore errors

Adam Karpierz
karpierz@alpha.pl
Re: gzip
#180
Author: news.tpi.pl
Date: Wed, 04 Dec 2002 11:42
89 lines
4055 bytes
"Pawel J Maczewski" <pjmacz@slcj.uw.edu.pl> wrote in message
news:ask7ug$8ko$3@news.tpi.pl...
> Czesc,
>   Kolejne moje glupiutkie pytanie: chcialbym strukture danych ktora
> zapisuje do pliku compresowac (oszczednosc miejsca w moim przypadku ok
> 80%). Wiec mam pytanie: czy istnieje jakis modul to umozliwiajacy
> (to=kompresje i dekompresje) bezposrednio z poziomu pythona? czy tez mam
> import os i przez wywolanie komend systemowych dzialac? ;)

To jest bardzo przydatna klasa. Pracujesz z nia jak z normalnym
plikiem. Tyle ze skompresowanym.

# Text files with automatic (un)compression
#
# Written by: Konrad Hinsen <hinsenk@ere.umontreal.ca>
# Last revision: 1996-11-8
#
# Modified by: Rafal Smotrzyk <rsmotrzyk@mikroplan.com.pl>
# Tested: python 1.5, WinNT 4.0 SP3
# Last revision: 1998-12-16
#  - added .wrz files
#  - standard module gzip
#  - removed file closing from destructor
# Last revision: 1998-12-31
#  - added 'read' method

# This module defines a class TextFile whose instances can be
# accessed like normal file objects (i.e. by calling readline(),
# readlines(), and write()), but can also be used as line iterators
# in for loops.
#
# The class TextFile also handles compression transparently, i.e. it is
# possible to read lines from a compressed text file as if it were not
# compressed.  Compression is deduced from the file name suffixes '.Z'
# (compress/uncompress) and '.gz' (gzip/gunzip) and '.wrz' and '.tgz'.

import os
import gzip

class TextFile:
   def __init__(self, filename, mode = 'r'):
      adir,afname=os.path.split(filename)
      self.myfileobj=None
      if mode == 'r':
         if not os.path.exists(filename):
            raise IOError, (2, 'No such file or directory')
         if filename[-3:]=='.gz' or filename[-4:]=='.wrz' or
filename[-4:]=='.tgz':
            self.myfileobj = open(filename, mode+'b')
            self.file=gzip.GzipFile(afname,mode+'b',9,self.myfileobj)
         else:
            self.file = open(filename, mode)
      elif mode == 'w':
         if filename[-3:]=='.gz' or filename[-4:]=='.wrz' or
filename[-4:]=='.tgz':
            self.myfileobj = open(filename, mode+'b')
            self.file=gzip.GzipFile(afname,mode+'b',9,self.myfileobj)
         else:
            self.file = open(filename, mode)
      else:
         raise IOError, (0, 'Illegal mode')
   def __getitem__(self, item):
      line = self.file.readline()
      if not line:
         raise IndexError
      return line
   def read(self,size=-1):
      return self.file.read(size)
   def readline(self):
      return self.file.readline()
   def readlines(self):
      return self.file.readlines()
   def write(self, data):
      self.file.write(data)
   def writelines(self, list):
      for line in list:
         self.file.write(line)
   def tell(self):
      if not self.myfileobj is None:
         return self.myfileobj.tell()
      return self.file.tell()
   def close(self):
      if not self.file is None:
         self.file.close()
         self.file=None
      if not self.myfileobj is None:
         self.myfileobj.close()
         self.myfileobj=None
[organizational] Re: gzip
#159
Author: Marcin Wojtczuk
Date: Wed, 04 Dec 2002 23:49
12 lines
1321 bytes
Adam Karpierz claimed:
> Nie ma glupkowatych pytan.
> Sa jedynie glupkowate odpowiedzi (j/n).

Czy to znaczy, że można tu zadawać pytania na które odpowiedź można znaleźć
na www.python.org lub poprzez google ? Nawet jeśli tak, to i tak _istnieją_
głupie pytania. Np. 'czy muszę mieć węża w kieszeni, żeby nauczyć się
pythona?'.

-- 
    [ http://www.stringi.com/viper/ ] [ GG 1513591 ]
	All good things come to those who wait
Re: [organizational] Re: gzip
#160
Author: Adam Karpierz
Date: Thu, 05 Dec 2002 10:17
17 lines
1648 bytes
Użytkownik "Marcin Wojtczuk" <fastviper@telkab.pl> napisał:
> Adam Karpierz claimed:
> > Nie ma glupkowatych pytan.
> > Sa jedynie glupkowate odpowiedzi (j/n).
>
> Czy to znaczy, że można tu zadawać pytania na które odpowiedź
>  można znaleźć na www.python.org lub poprzez google ?
> Nawet jeśli tak, to i tak _istnieją_ głupie pytania.
> Np. 'czy muszę mieć węża w kieszeni, żeby nauczyć się
> pythona?'.

Nie wiem o co Ci chodzi. Jest w standardowej bibliotece modul dekompresji
archimum gzip ? Nie ma. No wiec ani pytanie nie bylo wcale glupkowate ani
mam nadzieje moja pomoc.

Adam Karpierz
karpierz@alpha.pl
Re: [organizational] Re: gzip
#161
Author: Marcin Wojtczuk
Date: Thu, 05 Dec 2002 11:10
17 lines
1614 bytes
Adam Karpierz claimed:
> Użytkownik "Marcin Wojtczuk" <fastviper@telkab.pl> napisał:
>> Czy to znaczy, że można tu zadawać pytania na które odpowiedź
>>  można znaleźć na www.python.org lub poprzez google ?
>> Nawet jeśli tak, to i tak _istnieją_ głupie pytania.
>> Np. 'czy muszę mieć węża w kieszeni, żeby nauczyć się
>> pythona?'.
> 
> Nie wiem o co Ci chodzi. Jest w standardowej bibliotece modul dekompresji
> archimum gzip ? Nie ma. No wiec ani pytanie nie bylo wcale glupkowate ani
> mam nadzieje moja pomoc.

Pytałem o generalne zasady tej grupy, stąd zmiana Subject.

-- 
    [ http://www.stringi.com/viper/ ] [ GG 1513591 ]
	All good things come to those who wait
Re: [organizational] Re: gzip
#162
Author: Adam Karpierz
Date: Thu, 05 Dec 2002 15:46
24 lines
1971 bytes
Użytkownik "Marcin Wojtczuk" <fastviper@telkab.pl> napisał:

> Pytałem o generalne zasady tej grupy, stąd zmiana Subject.

Malo ludzi zna Pythona wiec nawet najprostrze pytania (zwlaszac
na poczatku) sa uzasadnione.

Nie ma sensu robic z grupy pythonowej kolejnej polskiej grupy newsowej
gdzie ponad meritum dominuja wzajemne przytyki, klotnie, docinki i
skrajnosci od ewidentnych spamow po zajadlych obroncow netykietowej
'moralnosci' itp.
O wiele wazniejsze od ew dyskomfortu 'gurus' jest stworzenie
szanujacej/lubiacej sie spolecznosci 'spolegliwej' nawet dla pytajacych
o oczywistosci.
Przez prawie 4 lata interesuje sie Pythonem (niestety nie zawodowo,
a chcialbym bardzo :) i czytam grupe comp.lang.python i tak mi sie marzy
aby tamta atmosfera zagoscila i tutaj.

Wiec postepujmy jak w tym starym kawale o malzenstwie jako sztuce
wzajemnych ustepstw i tolerancji:
"Ja ustepuje a moja Zona mnie toleruje"

--
Adam Karpierz
Re: [organizational] Re: gzip
#163
Author: Marcin Wojtczuk
Date: Thu, 05 Dec 2002 16:44
22 lines
1864 bytes
Adam Karpierz claimed:
> Użytkownik "Marcin Wojtczuk" <fastviper@telkab.pl> napisał:
>> Pytałem o generalne zasady tej grupy, stąd zmiana Subject.
> 
> Malo ludzi zna Pythona wiec nawet najprostrze pytania (zwlaszac
> na poczatku) sa uzasadnione.

Super :)
 
> Nie ma sensu robic z grupy pythonowej kolejnej polskiej grupy newsowej
> gdzie ponad meritum dominuja wzajemne przytyki, klotnie, docinki i
> skrajnosci od ewidentnych spamow po zajadlych obroncow netykietowej
> 'moralnosci' itp.

Cieszy mnie Twoje podejście - daje mi szansę. Zawsze boję się zadawać
pytania, bo często zostaję zjechany. Szczerze mówiąc miałem nadzieję,
że tak będzie - mnie python także kojarzy się z tym co w OS i WO najlepsze.

W takim razie biorę się za robotę a jakby co - będę pytał. Ok ?
-- 
    [ http://www.stringi.com/viper/ ] [ GG 1513591 ]
	All good things come to those who wait
Re: [organizational] Re: gzip
#164
Author: Rafal Zawadzki
Date: Tue, 10 Dec 2002 12:30
13 lines
1469 bytes
W artykule <asnsfj$997$1@news.tpi.pl> Adam Karpierz napisał(a):

> Przez prawie 4 lata interesuje sie Pythonem (niestety nie zawodowo,
> a chcialbym bardzo :) i czytam grupe comp.lang.python i tak mi sie marzy
> aby tamta atmosfera zagoscila i tutaj.

Wszystko leży chyba w podejściu ludzi tworzących grupę, prawda ?

-- 
http://ats.com.pl/~bluszcz || bluszcz<at>jabberpl.org
BOFH excuse #340:

Well fix that in the next (upgrade, update, patch release, service pack).
off topic :)
#165
Author: Maciej Wisniowski
Date: Sat, 14 Dec 2002 22:25
11 lines
1428 bytes
> Nie ma glupkowatych pytan.
> Sa jedynie glupkowate odpowiedzi (j/n).

Przepraszam ale nie mogłem się oprzeć:

Po skończonym wykładzie profesor mówi do studentów:
-A teraz proszę pytać i proszę się nie bać bo nie ma głupich pytań są tylko
głupie odpowiedzi...
Po chwili wstaje jeden ze studentów i mówi:
-Panie profesorze... a jak stanę na torach tramwajowych, ręce wyciągnę do
góry i chwycę się drutów to czy pojadę jak tramwaj????
Re: off topic :)
#166
Author: Adam Przybyla
Date: Sat, 14 Dec 2002 22:48
19 lines
1888 bytes
Maciej Wisniowski <maciej.wisniowski@euro.coig.pl> wrote:
>> Nie ma glupkowatych pytan.
>> Sa jedynie glupkowate odpowiedzi (j/n).

> Przepraszam ale nie mog?em si? oprze?:

> Po sko?czonym wyk?adzie profesor m?wi do student?w:
> -A teraz prosz? pyta? i prosz? si? nie ba? bo nie ma g?upich pyta? s? tylko
> g?upie odpowiedzi...
> Po chwili wstaje jeden ze student?w i m?wi:
> -Panie profesorze... a jak stan? na torach tramwajowych, r?ce wyci?gn? do
> g?ry i chwyc? si? drut?w to czy pojad? jak tramwaj????
	... i w tym momecie kazdy dobry wykladowac ma okazje
dodac swoje 3 grosze wykorzystujac to ze sa rozbawieni, czyli lepiej
zniosa jeszcze kilka madrych uwag umiejetnie splatajacych motywy tramwaju,
wykladu itp;-) Tak jak Python , tez gdzies tam ten humor M. Pythona
sie caly czas czai tylko trzeba go wykryc, powodujac ze jezyk jest lepiej
odbierany i sluzy bardzo dobrze baardzo powaznym celom;-) Z powazaniem
								Adam Przybyla
Re: off topic :)
#167
Author: Wojtek Walczak
Date: Sun, 15 Dec 2002 08:52
9 lines
1263 bytes
Dnia Sat, 14 Dec 2002 22:48:23 +0000 (UTC), Adam Przybyla napisał(a):
> wykladu itp;-) Tak jak Python , tez gdzies tam ten humor M. Pythona
A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]

ps. bo mnie nie ;)

-- 
[ ] gminick (at) underground.org.pl  http://gminick.linuxsecurity.pl/ [ ]
[ "Po prostu lubie poranna samotnosc, bo wtedy kawa smakuje najlepiej." ]
Re: off topic :)
#168
Author: Marcin Wojtczuk
Date: Sun, 15 Dec 2002 09:01
9 lines
1154 bytes
Wojtek Walczak claimed:
> A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]
> ps. bo mnie nie ;)

mnie też nie :) 

-- 
    [ http://www.stringi.com/viper/ ] 
  All good things come to those who wait
Re: off topic :)
#169
Author: Adam Przybyla
Date: Sun, 15 Dec 2002 11:44
8 lines
1257 bytes
Marcin Wojtczuk <fastviper@telkab.pl> wrote:
> Wojtek Walczak claimed:
>> A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]
>> ps. bo mnie nie ;)

> mnie też nie :) 
	... smutasy;-) Z powazaniem
								Adam Przybyla
Re: off topic :)
#171
Author: Piotr Blaszynski
Date: Sun, 15 Dec 2002 11:52
14 lines
1346 bytes
Marcin Wojtczuk <fastviper@telkab.pl> wrote:
> Wojtek Walczak claimed:
>> A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]
>> ps. bo mnie nie ;)
> 
> mnie też nie :) 

A u mnie natchnienie poszło, ale w drugą stronę ;)

-- 
    ,--._______   -----------------------------------------------------
   '.  o}      )~                Piotr Błaszyński
(_/,=,   |___| |          mailto: pblaszynski@wi.ps.pl
    /_/|_| |_|_|  _____________________________________________________
Re: off topic :)
#170
Author: Adam Karpierz
Date: Sun, 15 Dec 2002 19:12
8 lines
1288 bytes
Użytkownik "Adam Przybyla" <adam@gliwice.pl> napisał:

> ... smutasy;-) Z powazaniem

Oczywiwscie ze smutasy i nie czuja ze ma byc dokladnie odwrotnie ;)

--
Adam Karpierz
Re: off topic :)
#172
Author: Jacek Popławski
Date: Mon, 16 Dec 2002 13:39
9 lines
1380 bytes
my newsreader told me that Wojtek Walczak wrote:
>> wykladu itp;-) Tak jak Python , tez gdzies tam ten humor M. Pythona
> A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]

U mnie było odwrotnie. Tzn. zainteresowanie twórczością MP doprowadziło do
zainteresowania tym językiem a nie np. Perlem czy Javą.

-- 
http://decopter.sf.net - free unrealistic helicopter simulator
Re: off topic :)
#173
Author: Adam Przybyla
Date: Mon, 16 Dec 2002 14:12
11 lines
1582 bytes
Jacek Popławski <jp@no.more.hosts> wrote:
> my newsreader told me that Wojtek Walczak wrote:
>>> wykladu itp;-) Tak jak Python , tez gdzies tam ten humor M. Pythona
>> A wlasnie, natchnal kogos python do zglebienia Monty Pythona ? :]

> U mnie było odwrotnie. Tzn. zainteresowanie twórczością MP doprowadziło do
> zainteresowania tym językiem a nie np. Perlem czy Javą.
	... no a u mnie, to bylo tak, ze szukali pracownika
ktory zna sie na Pythonie, nauczylem sie szybko i zglosilem sie;-)
Z powazaniem
								Adam Przybyla
Re: off topic :)
#174
Author: Karol Bryd
Date: Tue, 17 Dec 2002 10:05
11 lines
1323 bytes
Adam Przybyla <adam@gliwice.pl> writes:

> 	... no a u mnie, to bylo tak, ze szukali pracownika
> ktory zna sie na Pythonie, nauczylem sie szybko i zglosilem sie;-)

Farciarz, kazdy chcialby miec taka robote :-) No ale u mnie pod tym
wzgledem tez nie jest najgorzej.

Pozdrawiam.
-- 
sygnaturka
Re: off topic :)
#175
Author: Adam Karpierz
Date: Tue, 17 Dec 2002 10:26
8 lines
1308 bytes
Uzytkownik "Karol Bryd" <karol@usunto.linuxnews.pl> napisal:

> Farciarz, kazdy chcialby miec taka robote :-)

Tez "szczerze" zazdroszcze :)

--
Adam Karpierz
Re: off topic :)
#176
Author: Adam Przybyla
Date: Tue, 17 Dec 2002 10:27
15 lines
1802 bytes
Karol Bryd <karol@usunto.linuxnews.pl> wrote:
> Adam Przybyla <adam@gliwice.pl> writes:

>>       ... no a u mnie, to bylo tak, ze szukali pracownika
>> ktory zna sie na Pythonie, nauczylem sie szybko i zglosilem sie;-)

> Farciarz, kazdy chcialby miec taka robote :-) No ale u mnie pod tym
> wzgledem tez nie jest najgorzej.
	... eee, to bylo dawno za czasow boomu com-owego;-) Potem plajta,
ale Python zostal i pakuje go teraz wszedzie do www, do skryptow itp.
bardzo wygodne narzedzie, prawdziwy szwajcarski scyzoryk - mozna
robic wszystko. Kiedys probowalem nauczyc sie porzadnie Common Lispa
aby miec wszechstronne narzedzie, to byla wielka porazka, Python
sprawdza sie o wiele lepiej. Z powazaniem
								Adam Przybyla
Re: off topic :)
#177
Author: Jacek Popławski
Date: Tue, 17 Dec 2002 10:59
9 lines
1431 bytes
my newsreader told me that Adam Przybyla wrote:
> Kiedys probowalem nauczyc sie porzadnie Common Lispa aby miec wszechstronne
> narzedzie, to byla wielka porazka, Python sprawdza sie o wiele lepiej.

BTW cechy wspólne pythona i lispa: interpretery obu bez problemu działają na
Palmie z 2MB RAM :-)

-- 
http://decopter.sf.net - free unrealistic helicopter simulator
Re: off topic :)
#178
Author: Adam Przybyla
Date: Tue, 17 Dec 2002 11:46
10 lines
1622 bytes
Jacek Popławski <jp@no.more.hosts> wrote:
> my newsreader told me that Adam Przybyla wrote:
>> Kiedys probowalem nauczyc sie porzadnie Common Lispa aby miec wszechstronne
>> narzedzie, to byla wielka porazka, Python sprawdza sie o wiele lepiej.

> BTW cechy wspólne pythona i lispa: interpretery obu bez problemu działają na
> Palmie z 2MB RAM :-)
	... nie tylko, oba maja mozliwosc wykonywania kodu imperatywnego 
i funkcyjnego. Z powazaniem
								Adam Przybyla
Re: off topic :)
#179
Author: Janusz A. Urbanowicz
Date: Wed, 15 Jan 2003 12:26
14 lines
1686 bytes
Jacek Popławski <jp@no.more.hosts> writes:

> my newsreader told me that Adam Przybyla wrote:
> > Kiedys probowalem nauczyc sie porzadnie Common Lispa aby miec wszechstronne
> > narzedzie, to byla wielka porazka, Python sprawdza sie o wiele lepiej.
> 
> BTW cechy wspólne pythona i lispa: interpretery obu bez problemu działają na
> Palmie z 2MB RAM :-)

Masz na mysli Pippy?

Jak zaladowac do niego zewnetrzny program?

Alex
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads