python 正则匹配字典的键写出代码
时间: 2023-09-03 19:10:57 浏览: 125
假设有一个字典 `my_dict`,你可以使用 Python 正则表达式模块 `re` 中的 `re.match()` 函数来匹配字典的键。下面是一个示例代码:
```python
import re
my_dict = {'apple': 1, 'banana': 2, 'cherry': 3}
pattern = re.compile(r'^a') # 匹配以字母 a 开头的键
for key in my_dict:
if pattern.match(key):
print(key)
```
运行结果:
```
apple
```
在上面的代码中,我们使用 `re.compile()` 函数创建了一个正则表达式模式,用于匹配以字母 a 开头的键。然后使用 `for` 循环遍历字典的键,对每个键使用 `re.match()` 函数进行匹配,如果匹配成功,则打印出该键。
相关问题
python 能不能用filter正则匹配字典的键写出代码
可以使用`filter`和正则表达式来匹配字典的键。下面是一个示例代码:
```python
import re
# 定义一个字典
my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
# 定义一个正则表达式,用于匹配字典键中含有 'a' 或 'o' 的项
pattern = re.compile(r'[ao]')
# 使用 filter 函数和 lambda 表达式筛选字典中符合条件的项
filtered_dict = dict(filter(lambda item: pattern.search(item[0]), my_dict.items()))
print(filtered_dict) # 输出 {'apple': 1, 'orange': 3}
```
在上面的代码中,`re.compile(r'[ao]')`定义了一个正则表达式,用于匹配字典键中含有 'a' 或 'o' 的项。`filter(lambda item: pattern.search(item[0]), my_dict.items())`使用了`filter`函数和 lambda 表达式来筛选字典中符合条件的项,最后使用`dict()`函数将筛选后的结果转换成字典类型。
阅读全文