Python3 Одна строка в переменную - PullRequest
0 голосов
/ 05 октября 2018

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

У меня есть это:

for item in (post_data.decode("utf-8").split('&')):
    print(item)

Это возвращает это:

name=john
lastname=smith

но я хочу установить это как переменные, чтобы я мог сделать:

print(name)

и вернуть Джона

Ответы [ 3 ]

0 голосов
/ 05 октября 2018

Мы можем использовать две .split() функции, а затем создать словарь .Отсюда мы можем напечатать name и lastname.

s = 'name=john lastname=smith'
dicta = (dict([i.split('=') for i in s.split()]))

print(dicta['name']) # => john
print(dicta['lastname']) # => smith

также с использованием словарного понимания

dicta = {i.split('=')[0]: i.split('=')[1] for i in s.split()}
0 голосов
/ 05 октября 2018

Вы можете использовать выражение генератора для разделения строк с помощью = и распаковки вывода в кортеж переменных:

name, lastname = (p.split('=', 1)[1] for p in post_data.decode("utf-8").split('&'))
0 голосов
/ 05 октября 2018

Если выходные данные представляют собой одну строку: 'name=john lastname=smith', вы можете использовать список со списком, например

[j.split('=')[1] for j in n.split()]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...