parse a csv file into a text file
Asaf Las
roegltd at gmail.com
Thu Feb 6 03:15:14 EST 2014
On Thursday, February 6, 2014 9:52:43 AM UTC+2, Zhen Zhang wrote:
> On Wednesday, February 5, 2014 7:33:00 PM UTC-5, Roy Smith wrote:
> I failed to figure out why.
OK, you had to look to what i posted second time. The first one is
irrelevant. Note that file was emulated using StringIO. in your
case it will be file name.
You can grab script below and run directly as python script:
<------------------------------------ start of script
import io
import csv
str_t = '''3520005,"Toronto (Ont.)",C ,F,2503281,2481494,F,F,0.9,1040597,979330,630.1763,3972.4,1
2466023,"Montréal (Que.)",V ,F,1620693,1583590,T,F,2.3,787060,743204,365.1303,4438.7,2
5915022,"Vancouver (B.C.)",CY ,F,578041,545671,F,F,5.9,273804,253212,114.7133,5039.0,8
3519038,"Richmond Hill (Ont.)",T ,F,162704,132030,F,F,23.2,53028,51000,100.8917,1612.7,28 '''
file_t = io.StringIO(str_t)
csv_t = csv.reader(file_t, delimiter = ',')
for row in csv_t:
print("split result ", row[1].strip('"').split('(')[0] , row[5])
<----------------------------- end of script
Output must be (i got it after run):
split result Toronto 2481494
split result Montréal 1583590
split result Vancouver 545671
split result Richmond Hill 132030
row[1].strip('"').split('(')[0] is City name
row[5] is digits at pos 5 wished
Both are strings, so save them later into file.
Regarding this one - you can split operations as below to see what is
happening:
row[1]
row[1].strip('"')
row[1].strip('"').split('(')
row[1].strip('"').split('(')[0]
Have a nice day
/Asaf
More information about the Python-list
mailing list