๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #289

Re: prostszy os.path.splitext

#289
From: Wojtek Walczak
Date: Sun, 08 Dec 2002 18:06
46 lines
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-mail
References: <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