MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / SheetParser

Class SheetParser

tools/python-3.11.9-amd64/Tools/demo/spreadsheet.py:225–302  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

223 SheetParser(self).parsefile(f)
224
225class SheetParser:
226
227 def __init__(self, sheet):
228 self.sheet = sheet
229
230 def parsefile(self, f):
231 parser = expat.ParserCreate()
232 parser.StartElementHandler = self.startelement
233 parser.EndElementHandler = self.endelement
234 parser.CharacterDataHandler = self.data
235 parser.ParseFile(f)
236
237 def startelement(self, tag, attrs):
238 method = getattr(self, 'start_'+tag, None)
239 if method:
240 method(attrs)
241 self.texts = []
242
243 def data(self, text):
244 self.texts.append(text)
245
246 def endelement(self, tag):
247 method = getattr(self, 'end_'+tag, None)
248 if method:
249 method("".join(self.texts))
250
251 def start_cell(self, attrs):
252 self.y = int(attrs.get("row"))
253 self.x = int(attrs.get("col"))
254
255 def start_value(self, attrs):
256 self.fmt = attrs.get('format')
257 self.alignment = xml2align.get(attrs.get('align'))
258
259 start_formula = start_value
260
261 def end_int(self, text):
262 try:
263 self.value = int(text)
264 except (TypeError, ValueError):
265 self.value = None
266
267 end_long = end_int
268
269 def end_double(self, text):
270 try:
271 self.value = float(text)
272 except (TypeError, ValueError):
273 self.value = None
274
275 def end_complex(self, text):
276 try:
277 self.value = complex(text)
278 except (TypeError, ValueError):
279 self.value = None
280
281 def end_string(self, text):
282 self.value = text

Callers 1

loadMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected