Kaynağa Gözat

Properly iterate and handle bytes.

Bentley James Oakes 7 yıl önce
ebeveyn
işleme
fc60963bfa

+ 6 - 1
state/modelverse_state/main.py

@@ -50,7 +50,7 @@ class ModelverseState(object):
                     f.write("a_%s [label=\"a_%s (%s)\"];\n" % (n, n, self.values[n]))
                 else:
                     f.write("a_%s [label=\"a_%s\"];\n" % (n, n))
-            for i, e in self.edges.iteritems():
+            for i, e in self.edges.items():
                 f.write("%s -> %s [label=\"%s\"];\n" % (e[0], e[1], i))
             f.write("}")
         return self.root
@@ -87,6 +87,11 @@ class ModelverseState(object):
 
             with gzip.open(filename, 'rb') as f:
                 for line in f:
+
+                    #handle str to bytes
+                    if sys.version_info[0] > 2:
+                        line = line.decode()
+
                     element_type, constructor = line.split(None, 1)
                     name, values = constructor.split("(", 1)
                     values, _ = values.rsplit(")", 1)

+ 1 - 1
state/modelverse_state/rdf.py

@@ -95,7 +95,7 @@ class ModelverseState(object):
                             """,
             }
 
-        for k, v in self.prepared_queries.iteritems():
+        for k, v in self.prepared_queries.items():
             self.prepared_queries[k] = prepareQuery(self.prepared_queries[k], initNs={"MV": self.mv})
 
         self.root = self.parse(bootfile)