Äîêóìåíò âçÿò èç êýøà ïîèñêîâîé ìàøèíû. Àäðåñ îðèãèíàëüíîãî äîêóìåíòà : http://kodomo.fbb.msu.ru/trac/snake/changeset/109%3A7352863453bc
Äàòà èçìåíåíèÿ: Unknown
Äàòà èíäåêñèðîâàíèÿ: Sun Apr 10 09:29:33 2016
Êîäèðîâêà: IBM-866
Changeset 109:7352863453bc òÀÓ Python Battle

Changeset 109:7352863453bc


Ignore:
Timestamp:
12/20/10 12:50:42 (5 years ago)
Author:
Daniil Alexeyevsky <me.dendik@òÀæ>
Branch:
default
Message:

snake.*.load now reports the line number of error

File:
1 edited

Legend:

Unmodified
Added
Removed
  • snake.py

    r104 r109 ˆà
    99    line = line.rstrip()ˆà
    1010    return lineˆà
    ˆà11ˆà
    ˆà12class File(object):ˆà
    ˆà13    """Wrapper around file that saves the current line number."""ˆà
    ˆà14    def __init__(self, file):ˆà
    ˆà15        self.file = fileˆà
    ˆà16        self.name = file.nameˆà
    ˆà17        self.line_no = 0ˆà
    ˆà18    def __iter__(self):ˆà
    ˆà19        for line_no, line in enumerate(self.file, self.line_no):ˆà
    ˆà20            self.line_no = line_noˆà
    ˆà21            yield lineˆà
    1122ˆà
    1223class Snake(object):ˆà
    òÀæ òÀæ ˆà
    3243        See program design docs for file syntax.ˆà
    3344        """ˆà
    ˆà45        file = File(file)ˆà
    ˆà46        try:ˆà
    ˆà47            self._load(file)ˆà
    ˆà48        except Exception, e:ˆà
    ˆà49            raise Exception("%s:%s: %s" % (file.name, file.line_no, e))ˆà
    ˆà50ˆà
    ˆà51    def _load (self, file):ˆà
    ˆà52        """Actually do the loading."""ˆà
    3453        for line in file:ˆà
    3554            magic, self.name = preprocess(line).split(' ', 1)ˆà
Note: See TracChangeset for help on using the changeset viewer.