Как конвертировать мой код, начинающийся с использованием регулярных выражений - PullRequest
0 голосов
/ 29 сентября 2019

У меня есть dict, и мне нужно извлечь значение, начинающееся с '12'.Я написал код и работает.Может помочь мне написать код с регулярным выражением

test = {'name': 'a','num': '1234','num2':'5678', 'num3':'0142'}
[ k for k,v in test.items() if str(v).startswith('12')]

My Out

['num', 'num4']

Ответы [ 2 ]

0 голосов
/ 29 сентября 2019
import re

test = {'name': 'a', 'num': '1234', 'num2': '5678', 'num3': '0142'}
[k for k, v in test.items() if re.match('12', v)]
0 голосов
/ 29 сентября 2019

Ваш код также отлично работает.Вы печатаете ключ вместо значения.

test = {'name': 'a','num': '1234','num2':'5678', 'num3':'0142'}
[ v for k,v in test.items() if str(v).startswith('12')]

Выход:

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