Когда питон видит, что %
, он ожидает символ форматирования сразу после этого. В принципе, он ожидает что-то вроде %s
или %d
... Но он находит C
, и он не знает, что с этим делать.
Вы можете увидеть, что вы можете положить после %
в this link.
Если вы хотите, чтобы буквально %
в строке вы должны бежать его с другим %
:
>>> x = "ll=%s%%2C%%20%s" % ("lat", "lng")
>>> x
'll=lat%2C%20lng'
Обратите внимание, что в Python 3, таким образом, считается «устаревшей» в пользу более новых .format()
способ. Вы также можете использовать это один в Python 2.7 (я верю, хотя я не уверен, что он был введен в Python 2.6?) И сделать то же самое, как это:
>>> x = "ll={0}%2C%20{1}".format("lat", "lng")
>>> x
'll=lat%2C%20lng'
Или вы могли бы сделать даже любителю вещи:
>>> x = "ll={latitude}%2C%20{longitude}".format(latitude="lat", longitude="lng")
>>> x
'll=lat%2C%20lng'
Check it out! (также есть Reddit thread об этом)
Включены ли эти данные в URL-адрес Google Maps? – Blender
Собственно, да, это будет –
Это старый формат, я не думаю, что он больше работает – Blender