Refact: Novo carregar_estado
authorEduardo Elias Camponez <camponez@gmail.com>
Sat, 18 May 2013 22:41:41 +0000 (19:41 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@cascardo.info>
Sun, 19 May 2013 14:27:22 +0000 (11:27 -0300)
Ao invés de criar um objeto novo é possível reusar o objeto já criado

src/municipios.py

index 7687985..74f6305 100644 (file)
 import xml.dom.minidom
 
 class Municipios:
-    def __init__(self, UF):
-        self.xml = xml.dom.minidom.parse("res/%s.xml" % (UF,))
+    def __init__(self):
         self.l = []
-        self._list()
 
     def _list(self):
         for i in self.xml.childNodes[0].childNodes:
@@ -37,6 +35,11 @@ class Municipios:
                 return i
         return None
 
+    def carregar_estado(self, UF):
+        self.l = []
+        self.xml = xml.dom.minidom.parse("res/%s.xml" % (UF,))
+        self._list()
+
     def verify_cep(self, m, cep):
         l = m[2][0:7]
         h = m[2][9:16]
@@ -45,13 +48,15 @@ class Municipios:
         return False
 
 if __name__ == '__main__':
-    municipios = Municipios('MG')
+    municipios = Municipios()
+
+    municipios.carregar_estado('MG')
     m = municipios.get_municipio('4877')
     print m[1]
     print municipios.verify_cep(m, '36880000')
     print municipios.verify_cep(m, '05020000')
 
-    municipios = Municipios('SP')
+    municipios.carregar_estado('SP')
     m = municipios.get_municipio('7107')
     print m[1]
     print municipios.verify_cep(m, '05020000')