一、正则表达式
正则表达式是一种符合特定规则的文本,可以用来搜索、替换、分割等操作。在Python中,我们可以使用re模块来使用正则表达式。
常用的正则表达式元字符:
^ 匹配字符串开头
$ 匹配字符串结尾
. 匹配任意字符除换行符
* 匹配0个或多个前面的字符
+ 匹配1个或多个前面的字符
? 匹配0个或1个前面的字符
\ 转义字符
[] 匹配内部的任意一个字符
| 或操作符
()
示例代码:
import re
# 查找匹配的内容
pattern = 'ca*t'
string = 'ct cat caat caaat caaaat'
print(re.findall(pattern, string)) # ['ct', 'cat', 'caat', 'caaat', 'caaaat']
二、lambda表达式
lambda表达式也称为匿名函数,是一种快速定义单行函数的方法。在Python中,我们可以将lambda表达式用在任意需要函数的地方。
示例代码:
square = lambda x: x**2
print(square(2)) # 4
# 多个参数的lambda表达式
addition = lambda x, y: x + y
print(addition(2, 3)) # 5
三、列表推导式
列表推导式可以通过对一个序列进行操作,创建一个新的列表。在Python中,我们可以用列表推导式来筛选、过滤或修改列表的内容。
示例代码:
numbers = [1, 2, 3, 4, 5]
# 过滤序列中的偶数
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers) # [2, 4]
# 将所有的元素加1
plus_one = [x + 1 for x in numbers]
print(plus_one) # [2, 3, 4, 5, 6]
四、eval函数
eval函数可以将一个字符串当作Python代码来执行,并返回执行结果。在Python中,我们可以使用eval函数来动态执行代码。
示例代码:
result = eval('3 + 4')
print(result) # 7
# 执行函数
expression = 'lambda x: x**2'
square = eval(expression)
print(square(3)) # 9
五、字典推导式
字典推导式可以通过对一个序列进行操作,创建一个新的字典。在Python中,我们可以用字典推导式来筛选、过滤或修改字典的内容。
示例代码:
names = {'Alice': 25, 'Bob': 30, 'Charlie': 35}
# 将字典键值颠倒
ages = {v: k for k, v in names.items()}
print(ages) # {25: 'Alice', 30: 'Bob', 35: 'Charlie'}
# 删除字典中值为偶数的键值对
odd_ages = {k: v for k, v in names.items() if v % 2 != 0}
print(odd_ages) # {'Alice': 25, 'Charlie': 35}