🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

słownik z optparse

#27471
From: pythonlogist
Date: Wed, 19 May 2010 16:03
27 lines
1729 bytes
witam,
mam, jak się wydaje, trywialny problem, którego nie mogę jednak rozwiązać. Parsuję opcje linii poleceń za pomocą modułu optparse. 

Otrzymuję swoje opcje kodem:
(opts, args) = parser.parse_args(sys.argv[1:])

zwykle używam tego potem w naturalny sposób:

if opts.moja_opcja: moje_funkcja(opts.moja_opcja)

Tym razem jednak potrzebuję dostać słownik {opcja:wartosc,...} i nie mam 
pojęcia jak go otrzymać zarówno z klasy parsera jak i listy ocji opts.

Metoda opts.__str__ drukuje coś jakby słownik, ale zamieniony na literalną 
reprezencję string słownika ( "{'opcja':'wartosc'}" ).
Mogę wykroić oczywiście jakiś swój parser na tym stringu, ale przecież to mija 
się z celem. Wolałbym już parsować wiersz poleceń ręcznie. 

Czy naprawdę optparse nie ma wbudowanej metody na otrzymanie słownika z 
opcjami i ich wartościami?

Z góry dziękuję za pomoc!
skk.


-- 
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Technical Details
Message-ID: <ht125d$2r4$1@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: <pythonlogist@NOSPAM.gazeta.pl>
Newsgroups: pl.comp.lang.python
Subject: słownik z optparse 
Date: Wed, 19 May 2010 16:03:58 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 27
Message-ID: <ht125d$2r4$1@inews.gazeta.pl>
NNTP-Posting-Host: localhost
X-Trace: inews.gazeta.pl 1274285038 2916 172.20.26.234 (19 May 2010 16:03:57 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Wed, 19 May 2010 16:03:58 +0000 (UTC)
X-User: pythonlogist
X-Forwarded-For: 89.171.116.18
X-Remote-IP: localhost
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit