ich bin ein Neuling in Python, ja wenn man es genau nimmt und die weniger hilfreichen Grundlagen der Programmierung im Studium außer Acht lässt, bin ich genau genommen ein Programmieranfänger. Nun will es aber meine Masterarbeit, dass ich mich doch dazu zwinge, mich endlich damit zu befassen (Zeit wird es!).
Da ich mit Daten aus OSM arbeite, möchte ich imposm.parser und probiere Sachen aus, um die Funktionsweise zu verstehen. Ich hoffe, es gibt hier den einen oder anderen, der ich mit imposm auskennt.
Ich auf folgendes Problem gestoßen:
Der Code
Code: Alles auswählen
from imposm.parser import OSMParser
def vertices(coords):
global vertexlist
vertexlist = []
for (coordid, lat, lon) in coords:
vertexlist.append(coordid)
print "Liste in der Funktion: ", vertexlist
print "Items: ", len(vertexlist), '\n'
p = OSMParser(concurrency=4, coords_callback=vertices)
p.parse('example.osm')
print "\n", "Globale Vertexliste: ", vertexlist
print "Items: ", len(vertexlist)
Code: Alles auswählen
Lokale Vertexliste: [20911496, 20911497, 20911498, 29509240, 29509277, 96916723, 96916733, 96916757, 96916758, 97043991, 97044155, ...]
Items:512
Lokale Vertexliste: [2075933132, 2075933135, 2075933136, 2075933137, 2075933138, 306261067, 2075933148, 2075933152, 306261064, ...]
Items:512
Lokale Vertexliste: [2234972303, 2234972305, 2234972307, 2234972309, 2234972312, 2234972315, 2234972317, 2234972319, 2234972323, ...]
Items:512
Lokale Vertexliste: [2259542926, 2259542927, 2259542928, 2259542929, 2259542931, 2259542932, 2259542933, 2259542934, 2259542936, ...]
Items:512
Lokale Vertexliste: [2259543426, 2259543427, 2259543428, 2259543429, 2259543430, 2259543431, 2259543432, 2259543433, 2259543434, ...]
Items:512
Lokale Vertexliste: [2260713391, 2260713394, 2260713396, 2260713398, 2260713400, 2260713402, 2260713404, 2260713406, 2260713408, ...]
Items:512
Lokale Vertexliste: [2263280273, 2263280276, 2263280279, 2263280283, 2263280286, 2263280289, 2263280292, 2263280296, 2263280299, ...]
Items: 178
Lokale Vertexliste: []
Items:0
Lokale Vertexliste: [20911500, 96916751, 96916753, 96916755, 96916760, 96916783, 185481547, 185481571, 186143628, 186143641, ...]
Items:227
Globale Vertexliste: [20911500, 96916751, 96916753, 96916755, 96916760, 96916783, 185481547, 185481571, 186143628, 186143641, ...]
Items: 227
Weiterhin: wenn ich
Code: Alles auswählen
concurrency=4
Code: Alles auswählen
concurrency=1
ich hoffe, mir kann jemand erklären, wo hier der Wurm liegt, oder ob ich imposm.parser total falsch anwende. oder ...
Danke!
Beste Grüße, Michael