Ich lerne, wie man Python und Basemap verwendet und möchte eine Schleife erstellen, die eine Karte von jedem projection
Typ erzeugt.Schleife durch mögliche Werte eine Klassenart
Die Projektionstypen sind: cea, mbtfpq, aeqd, sinu, poly usw. Also ich will nur eine Schleife, die Basemap(width=x, height=y, projection=[projection type], ...)
tut, aber nicht herausfinden kann, wie die tatsächlichen Arten von möglichen Projektionen zurückgeben.
Bisher habe ich versucht, die Dinge wie
proj = Basemap()
print(dir(proj))
und
proj = Basemap().projection
print(dir(proj))
aber weder kehrt die Arten von Projektionen könnte es sein. Ich habe versucht,
for value in Basemap().projection:
print (value)
Aber es sind gerade
c
y
l
und das ist es.
Closest Ich habe bekommen ist
for value in Basemap().__dict__.items():
print (value)
aber das gibt einen viel von Informationen, scheinbar die Standardwerte, aber einer von ihnen ist cyl
, die die Standard-Projektion ist. Ich komme näher, kann aber nicht sehen, wie ich durch jede Projektion iteriere.
(Meine Semantik sind falsch, so bitte korrigieren Sie mich, wenn ich falsch!)
Edit: Ich möchte lernen, wie dies zu tun, ohne „Betrug“, also da ich die Arten von Projektionen wissen möglich, laden Sie diese in ein Array und durchlaufen das Array. Ich versuche zu lernen, wie es geht, wenn ich nicht kennen die möglichen Werte.
Oh Mann, danke für das Finden! Ich sah mich für immer um. Für die Aufzeichnung, alles, was ich tun musste, war '' mpl_toolkits.basemap import _projnames' hinzuzufügen, dann tun Sie einfach 'für Schlüssel, Wert in _projnames.items(): // print (key)'. Ich bin mir sicher, dass es einen anderen Weg gibt, ohne die möglicherweise redundante '... import _projnames' hinzuzufügen, aber wie 'for key in Basemap() ._ projjames.items()' zu funktionieren, ist fehlgeschlagen. – BruceWayne
Auch, wenn es Ihnen nichts ausmacht, wonach habe ich gesucht? Ein "Schlüssel" in einem "Klasse" -Typ? Die "Werte" eines "Schlüssels" innerhalb einer Klasse ... sind nur neugierig auf die Semantik für die Zukunft. – BruceWayne
@BruceWayne Das hängt wirklich davon ab, wie es implementiert ist. Im Allgemeinen sind Informationen wie diese entweder ein Klassenattribut oder ein Modulattribut. (Ich hoffe, ich verstehe was genau das ist, was dich verwirrt) –