Python-Entsprechungen von AML-Funktionen

Bei der Geoverarbeitung in ArcGIS wird ein Werkzeug ausgeführt, um auf der Grundlage von vorhandenen Daten neue Informationen zu erstellen. Die Ergebnisse fungieren i. d. R. als Eingabe für weitere Werkzeuge, um auf diese Weise Workflows zu automatisieren. Typischerweise umfasst dies die Datenverwaltung, die räumliche Analyse, die Konvertierung von Daten oder eine Kombination dieser drei Vorgänge. Die Geoverarbeitung findet bereits seit einer Reihe von Jahren Anwendung, wobei ArcInfo Workstation eines der ersten Produkte war, das eine breite Palette von GIS-Vorgängen (als Befehle bezeichnet) sowie eine flexible Umgebung für deren Ausführung, die so genannte AML (Arc Macro Language), bietet.

In ArcGIS 9 wurden neue GIS-Operatoren und eine neue Umgebung für ihre Verwendung eingeführt. Mit vielen der Operatoren sind Benutzer von ArcInfo Workstation bereits vertraut (beispielsweise mit "Vereinigen" oder "Ausschneiden"), da deren Namen weitgehend beibehalten wurden. Seit ArcGIS 9.0 unterstützt ArcGIS zudem Skriptsprachen wie Python, sodass auch komplexe, häufig in AML verwendete Workflows programmiert werden können, wobei nicht proprietäre Sprachen eingesetzt werden, die einen größeren Funktionsumfang als AML bieten.

Die Beibehaltung einer Beziehung zwischen Befehls- und Werkzeugnamen zwischen ArcInfo Workstation und ArcGIS 9 wurde auch auf das Skriptmodell ausgeweitet, wobei die Merkmale von vielen Prozeduren beibehalten wurden. Die Benutzerfreundlichkeit von AML wurde nach Möglichkeit in ArcGIS beibehalten, beispielsweise beim Auflisten von Daten in einem Workspace oder Beschreiben der Eigenschaften eines Datasets. Damit wurde beabsichtigt, dass AML-Benutzer sich schnell mit dem Verfassen von Geoverarbeitungsskripten in ArcGIS vertraut machen können.

Um diesen Übergang zu erleichtern, wird im Folgenden erläutert, wie AML-Funktionen unter Verwendung von Python ausgeführt werden können. Nicht alle AML-Funktionen und -Direktiven finden sich im neuen Modell, da sich einige von ihnen direkt auf die Umgebung in ArcInfo Workstation beziehen (z. B. die Funktion "SHOW"), während andere (wie "LISTFILE") besser von Python selbst als von den ArcGIS-Geoverarbeitungskomponenten unterstützt werden. In vielen Beispielen werden allgemeine Python-Module in Verbindung mit der ArcGIS Python-Funktionalität verwendet.

Weitere Informationen zu Python-Entsprechungen von AML-Direktiven

Entsprechungen zu AML-Funktionen

ABS < x >

AML-Funktion
abs(x)

ACCESS < path >

AML-Funktion
import arcpy
arcpy.TestSchemaLock(path)

ACOS < x >

AML-Funktion
import math
math.acos(x)

AFTER < s > < search_s >

AML-Funktion
s[s.find(search_s) + 1:]

ANGRAD

AML-Funktion

<nicht zutreffend>

ASIN < x >

AML-Funktion
import math
math.asin(x)

ATAN < x >

AML-Funktion
import math
math.atan(x)

ATAN2 < y > < x >

AML-Funktion
import math
math.atan2(y, x)

BEFORE < s > < search_s >

AML-Funktion
s[:s.find(search_s)]

CALC < expression >

AML-Funktion
import arcpy
arcpy.CalculateValue_management(expression)

CLOSE < file_unit >

AML-Funktion
file_unit.close()

COLUMNINFO

AML-Funktion

<nicht zutreffend>

COPY < input > < output >

AML-Funktion
import arcpy
arcpy.Copy_management(input, output)

COS < x >

AML-Funktion
import math
math.cos(x)

CVTDISTANCE

AML-Funktion

<nicht zutreffend>

DATE -DEFAULT

AML-Funktion
import time
time.strftime("%y-%m-%d", time.localtime())

DATE -FULL

AML-Funktion
import time
time.strftime("%y-%m-%d.%H:%M:%S.%a", time.localtime())

DATE -USA

AML-Funktion
import time
time.strftime("%m/%d/%y", time.localtime())

DATE -UFULL

AML-Funktion
import time
time.strftime("%m/%d/%y.%H:%M:%S.%a", time.localtime())

DATE -VFULL

AML-Funktion
import time
time.strftime("%d %b %y %H:%M:%S %A", time.localtime())

DATE -DAY

AML-Funktion
import time
time.strftime("%d", time.localtime())

DATE -MONTH

AML-Funktion
import time
time.strftime("%B", time.localtime())

DATE -YEAR

AML-Funktion
import time
time.strftime("%Y", time.localtime())

DATE -VIS

AML-Funktion
import time
time.strftime("%d %b %y", time.localtime())

DATE -TIME

AML-Funktion
import time
time.strftime("%H:%M:%S", time.localtime())

DATE -AMPM

AML-Funktion
import time
time.strftime("%I:%M %p", time.localtime())

DATE -DOW

AML-Funktion
import time
time.strftime("%A", time.localtime())

DATE -CAL

AML-Funktion
import time
time.strftime("%B %d, %Y", time.localtime())

DATE -TAG

AML-Funktion
import time
time.strftime("%y%m%d", time.localtime())

DATE -FTAG

AML-Funktion
import time
time.strftime("%y%m%d.%H%M%S", time.localtime())

DATE -DFMT

AML-Funktion
import time
time.strftime(s, time.localtime())
# Format string (s) using below
#   %% same as % 
#   %a day of week, using locale's abbreviated weekday names 
#   %A day of week, using locale's full weekday names 
#   %b,%h month, using locale's abbreviated month names 
#   %B month, using locale's full month names #%c date and time as %x %X 
#   %d day of month (01-31) 
#   %H hour (00-23) 
#   %I hour (00-12) 
#   %j day number of year (001-366) 
#   %m month number (01-12) 
#   %M minute (00-59) 
#   %p locale's equivalent of AM or PM, whichever is appropriate 
#   %r time as %I:%M:%S %p 
#   %S seconds (00-59) 
#   %U week number of year (01-52), Sunday is the first day of the week 
#   %w day of week; Sunday is day 0 
#   %W week number of year (01-52), Monday is the first 
#   %x date, using locale's date format 
#   %X time, using locale's time format 
#   %y year within century (00-99) 
#   %Y year, including century (for example, 1994) 
#   %Z time zone abbreviation

DELETE < path >

AML-Funktion
import arcpy
arcpy.Delete_management(path)

DIGNUM

AML-Funktion

<nicht zutreffend>

DIR < file >

AML-Funktion
import os
os.path.dirname(file)

ENTRYNAME < file > -EXT

AML-Funktion
import os
os.path.basename(file)

ENTRYNAME < file > -NOEXT

AML-Funktion
import os
os.path.splitext(file)[0]

ENTRYNAME < file > -EXTONLY

AML-Funktion
import os
os.path.splitext(file)[1]

EXISTS < file >

AML-Funktion
import arcpy
arcpy.Exists(file)

EXP < x >

AML-Funktion
import math
math.exp(x)

EXTRACT < pos > < elements >

AML-Funktion
#elements are blank separated
elements.split()[pos - 1]

EXTRACT < pos > < elements >

AML-Funktion
#elements are comma separated
elements.split(",")[pos - 1]

FILELIST

AML-Funktion

<nicht zutreffend>

FORMAT < format > { exp1 exp2 }

AML-Funktion
"First %s, second %s" % (exp1, exp2)

FORMATDATE

AML-Funktion

<nicht zutreffend>

GETCHAR < prompt >

AML-Funktion
raw_input(prompt)

GETCHOICE < choices > < prompt > <-SORT>

AML-Funktion
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

list = choices.split()
list.sort()
print PopupList(prompt, list)

GETCOVER < workspace > < wildcard > < prompt > <-SORT>

AML-Funktion
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

arcpy.env.workspace = workspace

list = arcpy.ListDatasets(wildcard, "cover")
list.sort()
print PopupList(prompt, list)

GETDATABASE

AML-Funktion

<nicht zutreffend>

GETDATALAYER

AML-Funktion

<nicht zutreffend>

GETDEFLAYERS

AML-Funktion

<nicht zutreffend>

GETFILE < wildcard > <-INFO> < prompt > <-SORT>

AML-Funktion
# Assumes arcpy.env.workspace is set
#
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

list = arcpy.ListTables(wildcard, "INFO")
list.sort()
print PopupList(prompt, list)

GETFILE < wildcard > <-WORKSPACE> < prompt > <-SORT>

AML-Funktion
# Assumes arcpy.env.workspace is set
#
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

list = arcpy.ListWorkspaces(wildcard, "COVERAGES")
list.sort()
print PopupList(prompt, list)

GETFILE <wildcard> <-FILE> < prompt > <-SORT>

AML-Funktion
# Assumes arcpy.env.workspace is set
#
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy
import dircache
import os

list = arcpy.ListFiles()
list.sort()
print PopupList(prompt, list)

GETFILE <wildcard> <-DIRECTORY> < prompt > <-SORT>

AML-Funktion
# Assumes arcpy.env.workspace is set
#
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy 
import dircache
import os

list = arcpy.ListFiles()
list.sort()
print PopupList(prompt, list)

GETGRID < workspace > < wildcard > < prompt > <-SORT>

AML-Funktion
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

arcpy.env.workspace = workspace

list = arcpy.ListRasters(wildcard, "GRID")
list.sort()
print PopupList(prompt, list)

GETIMAGE < workspace > < wildcard > < type > < prompt > <-SORT>

AML-Funktion
# Type mapping:
#  -ALL use "" (blank)
#  -BMP use bmp
#  -TIFF use tiff
#  -IMAGINE use img	

from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

arcpy.env.workspace = workspace

list = arcpy.ListRasters(wildcard, type)
list.sort()
print PopupList(prompt, list)

GETITEM < path > < prompt > <-SORT>

AML-Funktion
from Tkinter import *
def PopupList(title, list):
	root = Tk()
	root.title(title)
	root.protocol("WM_DELETE_WINDOW", root.quit)
	frame = Frame(root)
	vScrollbar = Scrollbar(frame, orient=VERTICAL)
	hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
	listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
	vScrollbar.config(command=listbox.yview)
	vScrollbar.pack(side=RIGHT, fill=Y)
	hScrollbar.config(command=listbox.xview)
	hScrollbar.pack(side=BOTTOM, fill=Y)
	listbox.pack(side=LEFT, fill=BOTH, expand=1)
	frame.pack()
	for a in list:
		listbox.insert(END, a)
		listbox.bind("<Double-Button-1>", PopupList_callback)
		listbox.selection_set(0)
	root.mainloop()
	index = listbox.curselection()
	entry = listbox.get(index)
	root.destroy()
	return entry
def PopupList_callback(event):
        event.widget.quit()

import arcpy

list = []
pFields = arcpy.ListFields(path)
for field in pFields:
        list.append(pField.name)
list.sort()
print PopupList(prompt, list)

GETLAYERCOLS

AML-Funktion

<nicht zutreffend>

GETLIBRARY

AML-Funktion

<nicht zutreffend>

GETSTACK

AML-Funktion

<nicht zutreffend>

GETSYMBOL

AML-Funktion

<nicht zutreffend>

GETTIN < workspace > < wildcard > < prompt > <-SORT>

AML-Funktion
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

arcpy.env.workspace = workspace

list = arcpy.ListDatasets(wildcard, "tin")
list.sort()
print PopupList(prompt, list)

GETUNIQUE < path > < item > < prompt >

AML-Funktion
from Tkinter import *
def PopupList(title, list):
    root = Tk()
    root.title(title)
    root.protocol("WM_DELETE_WINDOW", root.quit)
    frame = Frame(root)
    vScrollbar = Scrollbar(frame, orient=VERTICAL)
    hScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    listbox = Listbox(frame, selectmode=SINGLE, xscrollcommand=hScrollbar.set, yscrollcommand=vScrollbar.set)
    vScrollbar.config(command=listbox.yview)
    vScrollbar.pack(side=RIGHT, fill=Y)
    hScrollbar.config(command=listbox.xview)
    hScrollbar.pack(side=BOTTOM, fill=Y)
    listbox.pack(side=LEFT, fill=BOTH, expand=1)
    frame.pack()
    for a in list:
        listbox.insert(END, a)
    listbox.bind("<Double-Button-1>", PopupList_callback)
    listbox.selection_set(0)
    root.mainloop()
    index = listbox.curselection()
    entry = listbox.get(index)
    root.destroy()
    return entry
def PopupList_callback(event):
    event.widget.quit()

import arcpy

list = []
rows = arcpy.da.SearchCursor(path, [item])
for row in rows:
    list.append(row[0])

list.sort()
count = len(list)
pos = 1
prev = list[0]
while pos < count:
    if prev == list[pos]:
        del(list[pos])
        count = count - 1
    else:
        prev = list[pos]
        pos = pos + 1
print PopupList(prompt, list)

IACCLOSE

AML-Funktion

<nicht zutreffend>

IACCONNECT

AML-Funktion

<nicht zutreffend>

IACDISCONNECT

AML-Funktion

<nicht zutreffend>

IACOPEN

AML-Funktion

<nicht zutreffend>

IACREQUEST

AML-Funktion

<nicht zutreffend>

INDEX < s > < search >

AML-Funktion
s.find(search) + 1

INVANGLE < x1 y1 x2 y2 >

AML-Funktion
import math
dx = x2 - x1
dy = y2 - y1
if dx == 0.0 and dy == 0.0:
    angle = 0
else:
    angle = math.atan2(math.fabs(dy), math.fabs(dx))
    if dx < 0.0:
        angle = 180.0 - angle
    if dy < 0.0:
        angle = 360.0 - angle

INVDISTANCE < x1 y1 x2 y2 >

AML-Funktion
import math
dist = math.sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1))

ITEMINFO < specifier > < item >

AML-Funktion
import arcpy

fields = arcpy.ListFields(specifier)
for field in fields:
    if field.name.lower() ==  item.lower():
        print field.name
        print field.length
        break

JOINFILE < obj1 > < obj2 > -file -sub

AML-Funktion
import os
os.path.join(obj1, obj2)

JOINFILE < obj1 > < obj2 >-ext

AML-Funktion
if obj2[0] == ".":
    obj1+ obj2
else:
    obj1 + "." + obj2

LENGTH < string >

AML-Funktion
len(string)

LISTFILE

AML-Funktion

<nicht zutreffend>

LISTITEM < specifier >

AML-Funktion
import arcpy
fieldNames = []
fields = arcpy.ListFields(specifier)
for field in fields:
    fieldNames.append(field.name)

LISTUNIQUE < specifier > < item >

AML-Funktion
import arcpy

list = []
rows = arcpy.da.SearchCursor(specifier, [item])
for row in rows:
    list.append(row[0])

list.sort()
count = len(list)
pos = 1
prev = list[0]
while pos < count:
    if prev == list[pos]:
        del(list[pos])
        count = count - 1
    else:
        prev = list[pos]
        pos = pos + 1

LOCASE < s >

AML-Funktion
s.lower()

LOG < x >

AML-Funktion
import math
math.log(x)

LOG10 < x >

AML-Funktion
import math
math.log10(x)

MAX < x > < y >

AML-Funktion
max(x, y)

MENU

AML-Funktion

<nicht zutreffend>

MIN < x > < y >

AML-Funktion
min(x, y)

MOD < x > < y >

AML-Funktion
x % y

NULL < string >

AML-Funktion
if string == None or string.strip() == "":
    ".TRUE."
else:
    ".FALSE."

OKANGLE

AML-Funktion

<nicht zutreffend>

OKDISTANCE

AML-Funktion

<nicht zutreffend>

OPEN < file > -READ

AML-Funktion
f = open(file, "r")

OPEN < file > -WRITE

AML-Funktion
f = open(file, "w")

OPEN < file > -APPEND

AML-Funktion
f = open(file, "a")

PATHNAME < file >

AML-Funktion
# Assumes arcpy.env.workspace is set
#
import arcpy
import os

os.path.join(arcpy.env.workspace, file)

QUERY

AML-Funktion

<nicht zutreffend>

QUOTE

AML-Funktion

<nicht zutreffend>

QUOTEEXISTS

AML-Funktion

<nicht zutreffend>

RADANG

AML-Funktion

<nicht zutreffend>

RANDOM

AML-Funktion
import random
random.randint(1, 2**31 - 1)

RANDOM < seed >

AML-Funktion
import random
random.seed(seed)
random.randint(1, 2**31 - 1)

RANDOM < begin > < end >

AML-Funktion
import random
random.randint(begin, end)

RANDOM < seed > < begin > < end >

AML-Funktion
import random
random.seed(seed)
random.randint(begin, end)

READ < file_unit >

AML-Funktion
file_unit.readline()

RENAME < input > < output >

AML-Funktion
import arcpy

arcpy.Rename_management(input, output)

RESPONSE < prompt > -NOECHO

AML-Funktion
import getpass
getpass.getpass(prompt)

RESPONSE < prompt >

AML-Funktion
import getpass
getpass.default_getpass(prompt)

ROUND < n >

AML-Funktion
long(round(n))

SCRATCHNAME

AML-Funktion
import arcpy

# Assumes arcpy.env.workspace is already set
arcpy.CreateScratchName()

SEARCH < s > < search_s >

AML-Funktion
s.find(search_s) + 1

SHOW

AML-Funktion

<nicht zutreffend>

SIN < x >

AML-Funktion
import math
math.sin(x)

SORT < elements > -ASCEND

AML-Funktion
# Elements are blank separated
#
list = elements.split()
list.sort()

SORT < elements > -DESCEND

AML-Funktion
# Elements are blank separated
#
list = elements.split()
list.sort(None, None, True)

SORT < elements > -ASCEND

AML-Funktion
# Elements are comma separated
#
list = elements.split(",")
list.sort()

SORT < elements > -DESCEND

AML-Funktion
# Elements are comma separated
#
list = elements.split(",")
list.sort(None, None, True)

SQRT < x >

AML-Funktion
import math
math.sqrt(x)

SUBST < s > < search_s > < replace_s >

AML-Funktion
s.replace(search_s, replace_s)

SUBST < s > < search_s >

AML-Funktion
s.replace(search_s, "")

SUBSTR < s > < pos >

AML-Funktion
s[pos - 1:]

SUBSTR < s > < pos > < num_chars >

AML-Funktion
s[pos - 1:pos + num_chars - 1]

TAN < x >

AML-Funktion
import math
math.tan(x)

TASK

AML-Funktion

<nicht zutreffend>

TOKEN < elements > -COUNT

AML-Funktion
# Elements are blank separated
#
len(elements.split())

TOKEN < elements > -FIND < e >

AML-Funktion
# Elements are blank separated
#
elements.split().index(e) + 1

TOKEN < elements > -MOVE < from > < to >

AML-Funktion
# Elements are blank separated
#
list = elements.split()
list.insert(To-1, list[From-1])
del(list[To])

TOKEN < elements > -INSERT < pos > < s >

AML-Funktion
# Elements are blank separated
#
list = elements.split()
list.insert(pos-1,s)

TOKEN < elements > -DELETE < pos >

AML-Funktion
# Elements are blank separated
#
list = elements.split()
del(list[pos-1])

TOKEN < elements > -REPLACE < pos > < s >

AML-Funktion
# Elements are blank separated
#
list = elements.split()
list[pos-1] = s

TOKEN < elements > -MOVE <from> <to>

AML-Funktion
# Elements are blank separated
#
list = elements.split()
fvalue = list[From-1]
tvalue = list[To-1]
list[From-1] = tvalue
list[To-1] = fvalue

TOKEN < elements > -COUNT

AML-Funktion
# Elements are comma separated
#
len(elements.split(""))

TOKEN < elements > -FIND < e >

AML-Funktion
# Elements are comma separated
#
elements.split().index(e) + 1

TOKEN < elements > -MOVE <from> <to>

AML-Funktion
# Elements are comma separated
#
list = elements.split("")
list.insert(To-1, list[From-1])
del(list[To])

TOKEN <elements> -INSERT <pos> <s>

AML-Funktion
# Elements are comma separated
#
list = elements.split("")
list.insert(pos-1,s)

TOKEN < elements > -DELETE < pos >

AML-Funktion
# Elements are comma separated
#
list = elements.split("")
del(list[pos-1])

TOKEN < elements > -REPLACE <pos> <s>

AML-Funktion
# Elements are comma separated
#
list = elements.split("")
list[pos-1] = s

TOKEN < elements > -MOVE < from > < to >

AML-Funktion
# Elements are comma separated
#
list = elements.split("")
fvalue = list[From-1]
tvalue = list[To-1]
list[From-1] = tvalue
list[To-1] = fvalue

TRANSLATE < string >

AML-Funktion
string.upper()

TRANSLATE < string > < new old >

AML-Funktion
for i in old:
    if string.find(i) > -1:
        string = string.replace(i,new[old.find(i)])

TRIM <s> -BOTH < trim_char >

AML-Funktion
s.strip(trim_char)

TRIM <s> -LEFT < trim_char >

AML-Funktion
s.lstrip(trim_char)

TRIM <s> -RIGHT < trim_char >

AML-Funktion
s.rstrip(trim_char)

TRIM < s > -BOTH

AML-Funktion
s.strip()

TRIM < s > -LEFT

AML-Funktion
s.lstrip()

TRIM < s > -RIGHT

AML-Funktion
s.rstrip()

TRUNCATE < x >

AML-Funktion
long(x)

TYPE < object >

AML-Funktion
type(object)

UNQUOTE

AML-Funktion

<nicht zutreffend>

UPCASE < s >

AML-Funktion
s.upper()

USERNAME

AML-Funktion
import getpass
getpass.getuser()

VALUE

AML-Funktion

<nicht zutreffend>

VARIABLE

AML-Funktion

<nicht zutreffend>

VERIFY < search_string > < string >

AML-Funktion
count = 0
for i in range(len(search_string)):
    if string.find(search_string[i]) == -1:
        count = i + 1
        break

WRITE < file_unit > < string >

AML-Funktion
file_unit.write(string)

Verwandte Themen

9/11/2013