Можно ли отправить список через URL?
Нет. URL это просто текст. Если вам нужен способ упаковать структурированную информацию в него, вы должны согласиться с поставщиком, с которым вы разговариваете.
Одна стандартная кодировка для структуры в URL, которая может или не может быть тем, что вам нужно, - это использование нескольких параметров с одним и тем же именем в строке запроса. Этот формат основан на представлении формы HTML:
http://www.example.com/script?par=1&par=6&par=5
может рассматриваться как параметр par
со списком из трех элементов в качестве значения. Или, может быть, нет, это зависит от получателя. Например, в приложении PHP вам нужно было бы назвать параметр par[]
, чтобы он принял значение массива.
Я знаю, что вы кодируете строку в utf-8, верно?
Нет. u'...'
строка является нативной строкой Unicode, где каждый индекс представляет собой целый символ, а не байт в какой-либо конкретной кодировке. Если вам нужны байты UTF-8, напишите u'...'.encode('utf-8')
перед URL-кодированием. UTF-8 является хорошим выбором по умолчанию, но, опять же, то, что требуется кодирующей стороне, зависит от этого приложения.
Появятся ли вы на другом конце при просмотре URL?
u
является частью буквального представления строки, так же, как сами кавычки '
. Они не являются частью строкового значения и не будут отображаться print
или при объединении в другие строки, если только вы не умышленно попросили литеральное представление, вызвав repr
.