[python] lstrip

Jan Martinek honza na dp.fce.vutbr.cz
Pondělí Únor 19 13:48:37 CET 2007


Hynek Beran wrote:
> Ahoj,
> mám script, který používá různé parametry.
> např.
> 
> pyBackup.py --cfg=celyVyvoj.cfg
> 
> ve scriptu mám :
> cfgFile = sys.argv[1].lstrip('--cfg=')
> 
> očekával jsem, že mi takto napsaný řádek vrátí název souboru  celyVyvoj.cfg .
> Uřízne to --cfg=
> 
> Ale ono mi to vrátí elyVyvoj.cfg (odmaže i c znázvu souboru). Když tam
> zadám cokoli jiného do parametru , co nezačíná na c, tak to projde ...
> Pochopil jsem špatně funkce ?
> 
> 
> Díky za pomoc.
> 
> --
> Hynek BERAN
> 

Je to tím, že parametrem metody lstrip je řetězec obsahující seznam 
znaků, které se mají uříznout. Např.

 >>> 'babalezekominem'.lstrip('ab')
'lezekominem'

Doporučuji tuto cestu opustit a použít modul OptionParser. Umí zacházet 
s parametry, bere v úvahu jejich datové typy, je možné mu nastavit 
defaultní hodnoty, vypisuje help a další užitečné věci, které by jinak 
člověk musel dost složitě psát.

Jan Martinek


Další informace o konferenci Python