Как закодировать одну строку в python


То, что я хочу сделать, это:

У меня есть имя каталога и имя файла. Я хочу добавить их в URL-адрес и сделать URL-вызов. Допустим, каталог

D:/somedir/userdata/scripts

И имя файла-myscript.txt

Я хочу добавить их в качестве параметров для вызова URL, но я хочу кодировать их отдельно, а не как пару значений ключа. То, что мне нужно, - это функция, которая может принимать входные данные, такие как:

D:/somedir/userdata/scripts

И возвращают вывод типа:

D%3A%2Fsomedir%2Fuserdata%2Fscripts
1 4

1 ответ:

В Python 3:

>>> import urllib.parse
>>> urllib.parse.quote_plus('D:/somedir/userdata/scripts')
'D%3A%2Fsomedir%2Fuserdata%2Fscripts'

В Python 2:

>>> import urllib
>>> urllib.quote_plus('D:/somedir/userdata/scripts')
'D%3A%2Fsomedir%2Fuserdata%2Fscripts'