Le 29/02/2012 09:25, Guillaume Chorn a écrit :
Hello All,

I have a .csv file that I created by copying and pasting a list of all the players in the NBA with their respective teams and positions (http://sports.yahoo.com/nba/players?type=lastname&first=1&query=&go=GO! <http://sports.yahoo.com/nba/players?type=lastname&first=1&query=&go=GO%21>). Unfortunately, when I do this I have no choice but to include a single leading whitespace character for each name. I'd like to compare this list of names to another list (also in .csv format but in a different file) using a simple Python script, but in order to do that I need to strip the leading whitespace from all of the names or none of them will match the names in the second list. However, when I try to do this as follows:

positions = open('/home/guillaume/Documents/playerpos.csv')

for line in positions:
    info = line.split(',')
    name = info[0]
    name = name.strip()
    print name #to examine the effect of name.strip()

I keep getting all of the names with the leading whitespace character NOT removed (for example: " Jeff Adrien". Why is this happening?

The following is a sample of the .csv file (the one I'm trying to remove the whitespace from) opened in gedit, the built-in Ubuntu text editor:

 Jeff Adrien,SF,Houston Rockets
 Arron Afflalo,SG,Denver Nuggets
 Maurice Ager,GF,Minnesota Timberwolves
 Blake Ahearn,PG,Los Angeles Clippers
 Alexis Ajinca,FC,Toronto Raptors
 Solomon Alabi,C,Toronto Raptors
 Cole Aldrich,C,Oklahoma City Thunder
 LaMarcus Aldridge,FC,Portland Trail Blazers
 Joe Alexander,SF,New Orleans Hornets
 Lavoy Allen,FC,Philadelphia 76ers
 Malik Allen,FC,Orlando Magic
 Ray Allen,SG,Boston Celtics
 Tony Allen,GF,Memphis Grizzlies
 Lance Allred,C,Indiana Pacers
 Rafer Alston,PG,Miami Heat

Any help with this seemingly simple but maddening issue would be much appreciated.

thanks,
Guillaume





Use csv module instead of parsing yourself the csv file:

import csv

reader = csv.Reader(open("file.csv"))

for row in reader:
      for key in row:
            print("key=", key, " value=", row[key])


Code above not tested but should work.

Cheers
Karim

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to