Найти - Пользователи
Полная версия: Проблема с вложенными кавычками
Начало » Python для новичков » Проблема с вложенными кавычками
1
Suliman
Не могу разобраться как передать значения переменных в функцию.

Изначально функция выглядит так:
arcpy.Warp_management(input_image, ";'517.03149414 0.02811885';'516.50000000 -517.50000000';'-0.97187501 -517.02728271'", "'-114.92 35.95';'-114.67 35.99';'-114.61 35.79';'-114.87 35.74'", save_reprojected_location, "POLYORDER1", "NEAREST")

Я заменил числа в скобках на переменные, а сами переменные опредылил выше. Получилось так:

x1 = '-0.02640247 0.97187501'
x2 = '517.03149414 0.02811885'
x3 = '516.50000000 -517.50000000'
x4 = '-0.97187501 -517.02728271'
y1 = '-114.92 35.95'
y2 = '-114.67 35.99'
y3 = '-114.61 35.79'
y4 = '-114.87 35.74'
# Process: Warp
arcpy.Warp_management(input_image, "x1;x2;x3;x4", "y1;y2;y3;y4", save_reprojected_location, "POLYORDER1", "NEAREST")

Пробовал так же их брать в двойные кавычки. типа x1 = “'-123'” – Не помогло.

Скрипт ругается - мол “Target Control Points: Value is required”.

Как решить проблему?
plusplus
x_points =  "%s;%s;%s;%s" % (x1, x2, x3, x4)
y_points =  "%s;%s;%s;%s" % (y1, y2, y3, y4)
arcpy.Warp_management(input_image, x_points, y_points,  save_reprojected_location, "POLYORDER1", "NEAREST")
Saturn
И так можно
"{0}".format(var)
kozlo22
Saturn
Лутц говорит, что так даже лучше)
agalen
Кавычки длолжны быть в значении переменной:
x1 = "'-0.02640247 0.97187501'"
...
x_points = ";".join( [x1, x2, x3, x4] )
Другой вариант:
x1 = "-0.02640247 0.97187501"
...
x_points =  "'{0}';'{1}';'{2}';'{3}'".format(x1, x2, x3, x4)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB