On 1/7/2010 10:26 AM Lowell Tackett said...
I suspect using csv is overkill, but you'd need to be working with Dialects by first creating a Dialect, then applying the Dialect to your source data.

I've not done that, and for your use case, I think I'd do something like:

filedata = '''1001, 342821.71900, 679492.08300,      0.00000,
1002, 342838.55786, 679909.81375,      0.00000,
1003, 342965.61860, 679911.34762,      0.00000,
1004, 343012.82497, 680338.36624,      0.00000,
1005, 342783.08155, 680347.62727,      0.00000,
1006, 342623.01979, 679547.20429,      0.00000,'''.split('\n')

for ii in filedata:
    print [ jj.strip() for jj in ii.split(',')[:4]]


HTH,

Emile



Displayed below is an extract from a CSV file that displays some [land
surveying] coordinates:

1001, 342821.71900, 679492.08300, 0.00000,
1002, 342838.55786, 679909.81375, 0.00000,
1003, 342965.61860, 679911.34762, 0.00000,
1004, 343012.82497, 680338.36624, 0.00000,
1005, 342783.08155, 680347.62727, 0.00000,
1006, 342623.01979, 679547.20429, 0.00000,

I intend to use data such as this along with my Mandrake 10.1 OS and
Python 2.5.1 to create some apps that will manipulate coordinate data as
I wish. Obviously, one of my first steps is to be able to
discriminatingly access and use the available file data. (As a reference
point of knowledge...I am grasping this effort as a way to introduce
myself to programming in general, and Python in particular. Whatever I
absorb/display/offer here will be for the first time ever, and each step
will "push my envelop".)

Had originally intended to unpack the data such as:

pt_no, north, east, elev = ('blah, blah')

until I ran across the csv module. Had accomplished this:

 >> coord = csv.reader(open('true_coord'))
 >>> for line in coord:
... print line
...
[' 1001', ' 342821.71900', ' 679492.08300', ' 0.00000', ' ']
[' 1002', ' 342838.55786', ' 679909.81375', ' 0.00000', ' ']
[' 1003', ' 342965..61860', ' 679911.34762', ' 0.00000', ' ']
[' 1004', ' 343012.82497', ' 680338.36624', ' 0.00000', ' ']
[' 1005', ' 342783.08155', ' 680347.62727', ' 0.00000', ' ']
[' 1006', ' 342623.01979', ' 679547.20429', ' 0.00000', ' ']
 >>>

when I realized that the procedure had included leading white space.
Attempting to remedy that, I found the Python documentation (on line}
and came across--'csv.Dialect.skipinitialspace' which I believe is the
answer to my dilemma. However, my effort to implement that detail, based
on interpreting the skimpy examples in the documentation:

 >>> coord = csv.reader(open('true_coord'),csv.Dialect.skipinitialspace
= True)

got me roundly shot down with:

File "<stdin>", line 1
SyntaxError: keyword can't be an expression

My seemingly endless stabs at attempting variations on that code line
are going nowhere, so I lay my case before the "Council of Coders".


 From the virtual desk of Lowell Tackett




_______________________________________________
Tutor maillist  -  [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


_______________________________________________
Tutor maillist  -  [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to