Article View: pl.comp.lang.python
Article #289Re: prostszy os.path.splitext
From: Wojtek Walczak
Date: Sun, 08 Dec 2002 18:06
Date: Sun, 08 Dec 2002 18:06
46 lines
2426 bytes
2426 bytes
Dnia Sun, 8 Dec 2002 18:25:44 +0100, Adam Karpierz napisaล(a):
>> ...i w kazdym wypadku wyniki sa identyczne.
> Niekoniecznie.
> Sprawdz sobie dla np:
>/home/lala.lala/zbiorek_bez_rozszerzenia
Wieeedzialem, ze o czyms zapomnialem, dzieki ;)
def splitext(p):
a = p.rfind('.')
if a == -1: a=len(p)
if p[a:].count("/"):
return p, ''
return p[:a], p[a:]
...a teraz ?
>> Zmienilem sobie troche os.path.join(), tak, zeby zamienial slashe
>> wystepujace grupami na slasha pojedynczego (dwie linijki kodu roznicy
>> nie liczac 'import re' ;)), np.:
> Nie ma potrzeby nic nowego pisac ani zmieniac.
> Zmienianie powinno byc nawet surowo karane ;)
Proponuje przepisanie modulu sto razy nie zmieniajac ani jednego bajtu ;)
> Wszysko potrzebne znajdziesz w os.path.
Wiem, wiem, znam ten modul na pamiec :)
os.path.normpath robi co powinno, ale strasznie jest ta funkcja pogmatwana.
Oto jak zmienilem os.path.join:
---
def join(a, *p):
"""Join two or more pathname components, inserting '/' as needed"""
path = re.sub("[/]+", "/", a) # TU
for b in p:
b = re.sub("[/]+", "/", b) # i TU
---
...a reszta po staremu.
Jeszcze raz dzieki za wskazanie tego bledu zwiazanego z moim splitext.
ps. pisze to wszystko oczywiscie tylko dla zabawy, jak przychodzi
co do czego to i tak uzywam standardowych modulow ;]
--
[ ] gminick (at) underground.org.pl http://gminick.linuxsecurity.pl/ [ ]
[ "Po prostu lubie poranna samotnosc, bo wtedy kawa smakuje najlepiej." ]
Technical Details
Message-ID:
<slrnav7g0f.o7.gminick@hannibal.localdomain>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.itl.waw.pl!news.nask.pl!news.internetia.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mailReferences:
<slrnav7akp.id.gminick@hannibal.localdomain> <asvvmd$e8g$1@news.tpi.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.itl.waw.pl!news.nask.pl!news.internetia.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail From: Wojtek Walczak <gminick@hacker.pl> Newsgroups: pl.comp.lang.python Subject: Re: prostszy os.path.splitext Date: Sun, 8 Dec 2002 18:06:49 +0000 (UTC) Organization: tp.internet - http://www.tpi.pl/ Lines: 46 Message-ID: <slrnav7g0f.o7.gminick@hannibal.localdomain> References: <slrnav7akp.id.gminick@hannibal.localdomain> <asvvmd$e8g$1@news.tpi.pl> NNTP-Posting-Host: pb135.kepno.sdi.tpnet.pl Mime-Version: 1.0 X-Trace: news.tpi.pl 1039370809 3671 213.25.218.135 (8 Dec 2002 18:06:49 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Sun, 8 Dec 2002 18:06:49 +0000 (UTC) User-Agent: slrn/0.9.7.3 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit