sp3Аналогичный результат, или я неправильно применил…dict(c.split('=',1) for c in a.split())
sp3Аналогичный результат, или я неправильно применил…dict(c.split('=',1) for c in a.split())
>>> s = 'key1=value1\nkey2=value2'
>>> d = dict(p.split('=', 1) for p in s.splitlines())
>>> d
{'key2': 'value2', 'key1': 'value1'}
>>>
py.user.nextВ общем я не знаю, результат получается всегда один:
2.6>>> s = 'key1=value1\nkey2=value2'
>>> d = dict(p.split('=', 1) for p in s.splitlines())
>>> d
{'key2': 'value2', 'key1': 'value1'}
>>>
{'key1': 'value1'}
{'key2': 'value2'}
print a
('nenugno1', 'key1=value1', 'nenugno12')
('nenugno2', 'key2=value2', 'nenugno2')
print a[1]
key1=value1
key2=value2
{'key1': 'value1', 'key2': 'value2'}
import libastral
print libastral.solve_problem()
#!/usr/bin/env python
#-*- coding: utf8 -*-
import re
test = '''temp key1=value1 temp
temp key2=value2 temp
temp key3=value3 temp'''
rex = re.compile('(\w+) (\w+=\w+) (\w+)')
acc = list()
for ln in test.split('\n'):
m = rex.match(ln)
if m is not None:
acc.append(m.group(2))
res = dict([a.split('=', 1) for a in acc])
print res
import re
from grab import Grab
g = Grab()
#
g.go('http://python.net/')
#
rex = re.compile(r'(<meta name=".*?")(.*?)(/>)')
for data in rex.findall(g.response.body):
a = data[1]
d = dict(map(lambda x: x.split('=', 1), a.split()))
print d
{'content': '"SS3tlfjOjNLiOGzGlk9H9izd3XC/mf5PDQOTg4TDCE8="'}
{'content': '"index,follow"'}
{'content': '"en"'}
{'content': '"starship,python"'}
Traceback (most recent call last):
File "test.py", line 13, in <module>
d = dict(map(lambda x: x.split('=', 1), a.split()))
ValueError: dictionary update sequence element #1 has length 1; 2 is required
content="SS3tlfjOjNLiOGzGlk9H9izd3XC/mf5PDQOTg4TDCE8="
content="index,follow"
content="en"
content="starship,python"
content="The home of pythonistas"
content="various"
wghostэто не очень похоже на описание в первом сообщении
В общем я не знаю, результат получается всегда один:
Попробую подробней расписать что происходит.
Данные собираются регуляркой в “a”.
>>> a = [('nenugno1', 'key1=value1', 'nenugno12'),
... ('nenugno2', 'key2=value2', 'nenugno2')]
>>>
>>> d = dict(t[1].split('=', 1) for t in a)
>>> print d
{'key2': 'value2', 'key1': 'value1'}
>>>
wghostДля вашего случая:
Не очень понимаю как работает вариант с ‘накоплением’ данных в отдельную коллекцию…
acc = [d[1] for d in rex.findall(g.response.body)]
res = dict([a.split('=', 1) for a in acc])
print res