Newby Question for reading a file
steven.oldner
steven.oldner at gmail.com
Thu Feb 19 14:07:21 EST 2009
On Feb 19, 12:40 pm, Mike Driscoll <kyoso... at gmail.com> wrote:
> On Feb 19, 12:32 pm, "steven.oldner" <steven.old... at gmail.com> wrote:
>
> > Simple question but I haven't found an answer. I program in ABAP, and
> > in ABAP you define the data structure of the file and move the file
> > line into the structure, and then do something to the fields. That's
> > my mental reference.
>
> > How do I separate or address each field in the file line with PYTHON?
> > What's the correct way of thinking?
>
> > Thanks!
>
> I don't really follow what you mean since I've never used ABAP, but
> here's how I typically read a file in Python:
>
> f = open("someFile.txt")
> for line in f:
> # do something with the line
> print line
> f.close()
>
> Of course, you can read just portions of the file too, using something
> like this:
>
> f.read(64)
>
> Which will read 64 bytes. For more info, check the following out:
>
> http://www.diveintopython.org/file_handling/file_objects.html
>
> - Mike
Hi Mike,
ABAP is loosely based on COBOL.
Here is what I was trying to do, but ended up just coding in ABAP.
Read a 4 column text file of about 1,000 lines and compare the 2
middle field of each line. If there is a difference, output the line.
The line's definition in ABAP is PERNR(8) type c, ENDDA(10) type c,
BEGDA(10) type c, and LGART(4) type c.
In ABAP the code is:
LOOP AT in_file.
IF in_file-endda <> in_file-begda.
WRITE:\ in_file. " that's same as python's print
ENDIF.
ENDLOOP.
I can read the file, but didn't know how to look st the fields in the
line. From what you wrote, I need to read each segment/field of the
line?
Thanks,
Steve
More information about the Python-list
mailing list