re_results = re.findall("\[(.*?)\]",example_string)
... может работать для вас (если у вас нет вложенных скобок) ... Я подозреваю, что ключ, который вы отсутствовали, использовал жадные совпадения " [] «будет соответствовать как можно большему, поэтому он захватывает все: от первого открытого кронштейна до последнего закрытого кронштейна в виде единственного совпадения. «[.?]» Соответствует как можно меньше, при этом только один кронштейне пары за одной игрой
(вам нужно будет вручную отливать в целые числа, если тот, что вы на самом деле хотите)
вы могли бы сделать что-то простое как
def castIntOrDont(x):
try:
return int(x)
except ValueError:
return x.strip("'") #strip out the extra quotes on strings
print map(castIntOrDont,re_result) #list(map(...)) in py3
Откуда «верх» пришел. Я бы ожидал 'subName' – inspectorG4dget
Вы хотите оценить элементы на этом же шаге (выглядит так)? – kay
это *** кричит *** XY мне. Что вы пытаетесь выполнить с помощью '[0, 'subName', 0, 1]'? –