I don't understand what I don't understand in the following: ------------------------------------------ # reader.py - testing char-by-char marching methods
f = open('sample_decaf.d', 'r') text = f.readlines() f.close() # this is C-style, 15 lines, in Python: end_line = len(text) line_ptr = 0 while line_ptr < end_line: input = text[line_ptr] output = '' char_ptr = 0 end_char = len(input) while char_ptr < end_char: output += input[char_ptr] char_ptr += 1 print output, line_ptr += 1 # this is Python, 7 lines: for line in text: output = '' for char in line: output += char print output, # but I need locations, so this is impure, 11-line, Python: line_ptr = 0 for line in text: output = '' char_ptr = 0 for char in line: output += char char_ptr += 1 print output, line_ptr += 1 # with a Loc object, 10 lines (not counting the Loc class): loc = Loc(0,0) # Name error: name 'Loc' is not defined for line in text: output = '' for char in line: output += char loc.nextChar() print output + Loc.repr(), loc.nextLine() class Loc: line = 0 char = 0 def __init__(self, l, c): line = l char = c def nextChar(self): char += 1 def nextLine(self): line += 1 char = 0 def repr(self): return 'Loc: line='+str(line)+', char='+str(char) # end of class Loc # end of reader.py -- http://mail.python.org/mailman/listinfo/python-list