On Mon, Jul 27, 2009 at 5:10 AM, <[email protected]> wrote:
> files = set([file for file in os.listdir(os.getcwd()) if
> file.endswith('svg')])
> print len(files)
>
> for file in files:
> file = file.strip('.svg')
> print file
> # if countries.has_key(file):
> # print file
>
> When I run this I get:
>
> Flag_of_Uganda
> ...
>
> The problem is that for example the file Flag_of_the_United_States.svg when I
> use the strip('.svg') it is returned as Flag_of_the_United_State
>
> Also, How do I remove 'Flag_of', 'Flag_of_the_'
I suggest you use glob.glob() instead of os.listdir():
files = glob.glob('Flag_of_*.svg)
Then you know that each file name starts with Flag_of_ and ends with
.svg. To remove them, since they are fixed strings you can just use
slicing;
file = file[8:-4]
if file.startswith('the_'):
file = file[4:]
Kent
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor