В базе данных есть список классов объектов. приведенные ниже коды могут успешно распечатать x, y каждой точки каждой функции в классе объектов. часть комментария не работает, и я не знаю, как записать значения координат точек в текстовый файл.как выводить значения координат класса объектов в текстовый файл
arcpy.env.workspace = 'database'
fc='file1'
outpath='output Directory'
cursor=arcpy.da.SearchCursor(fc, ["[email protected]","[email protected]"])
#output=open("result.txt","w")
for row in cursor: #iterate the rows in the table
print ("Feature {0}: ".format(row[0]))
for point in row[1].getPart(0):
print ("{0},{1}".format(point.X, point.Y))
#output.write(str(point.X)+""+str(point.Y)+"\n")
#read_data = output.read()
#print read_data
#output.close()
Любая помощь приветствуется!
новых кодов выглядеть следующим образом:
arcpy.env.workspace = 'database'
fc='file1'
outpath='output Directory'
cursor=arcpy.da.SearchCursor(fc, ["[email protected]","[email protected]"])
with open('result.txt', 'w') as output:
for row in cursor: #iterate the rows in the table
for point in row[1].getPart(0):
output.write(str(point.X)+""+str(point.Y)+"\n")
print os.path.isfile('result.txt')
output.close()
Я добавил код output.close() вне forloop и оно не поднимать какую-либо ошибку, но не текстовый файл был создан в каталоге либо. Нужно ли еще исправлять? Также я думаю, что заявление With, которое вы дали, не вписывается здесь, кажется, что оно использует «r» не «w». не могли бы вы также указать это? tks – widget
Ваш файл result.txt должен быть создан, как только вы напишете файл output = open ('result.txt', 'w'), потому что AFAIK это обычное поведение python - если файл существует, работайте с ним, если нет - создайте его. Проверьте отредактированный ответ выше, если это не поможет, должно быть какое-то другое очевидное объяснение, которое я сейчас не вижу. – erhesto
Я использовал ваши коды, и он также не создает файл. для печати вывода с использованием кодов: read_data = output.read() print read_data, он просто говорит, что файл не открыт для чтения. Поэтому я думаю, что я не знаю, как проверить вывод. В любом случае меня тоже путают, что файлы не создаются в outputirectc – widget