Python 正则表达式与格式化输出教程
正则表达式是一种用于匹配字符串的模式,它可以用于搜索、替换和验证字符串。格式化输出是一种将数据按照一定格式输出的方法,通常用于输出表格、报告等。
在 Python 中,正则表达式和格式化输出都有内置的模块,分别是 're' 和 'format'。下面分别介绍这两个模块的用法。
正则表达式
're' 模块是 Python 中用于处理正则表达式的模块。它提供了一系列函数,可以用于匹配、搜索和替换字符串。下面是一些常用的函数:
-
're.match(pattern, string, flags=0)':从字符串的起始位置开始匹配正则表达式。如果匹配成功,返回一个匹配对象;否则返回 'None'。
-
're.search(pattern, string, flags=0)':从字符串中搜索第一个匹配正则表达式的位置。如果匹配成功,返回一个匹配对象;否则返回 'None'。
-
're.findall(pattern, string, flags=0)':在字符串中搜索所有匹配正则表达式的位置,并返回一个列表。
-
're.sub(pattern, repl, string, count=0, flags=0)':将字符串中所有匹配正则表达式的部分替换为指定的字符串。
下面是一些常用的正则表达式符号:
-
'.': 匹配任意一个字符。
-
'*': 匹配前面的字符出现 0 次或多次。
-
'+': 匹配前面的字符出现 1 次或多次。
-
'?': 匹配前面的字符出现 0 次或 1 次。
-
'^': 匹配字符串的起始位置。
-
'$': 匹配字符串的结束位置。
-
'[]': 匹配括号中出现的任意一个字符。
-
'': 转义符号,用于匹配特殊符号。
例如,要匹配字符串中的所有数字,可以使用如下正则表达式:
import re
text = 'abc123def456ghi789'
pattern = r'\d+'
result = re.findall(pattern, text)
print(result)
输出结果为:
['123', '456', '789']
格式化输出
'format' 模块是 Python 中用于格式化输出的模块。它提供了多种格式化输出的方法,可以输出各种不同类型的数据,例如字符串、数字、日期等。
下面是一些常用的格式化输出符号:
-
'{}': 占位符,用于表示要输出的数据。
-
':': 格式化符号,用于指定输出的格式。
例如,要输出一个浮点数,保留两位小数,可以使用如下代码:
num = 3.1415926
print('The value of pi is {:.2f}'.format(num))
输出结果为:
The value of pi is 3.14
还可以使用其他格式化符号,例如 '%', 'd', 's' 等等,具体使用方法可以参考 Python 官方文档。
除了使用 'format' 模块,还可以使用 f-string 来进行格式化输出。f-string 是 Python 3.6 新增的一种格式化字符串的方法,它使用 '{}' 作为占位符,可以在 '{}' 中直接嵌入变量或表达式。
例如,要输出一个字符串和一个整数,可以使用如下代码:
name = 'Alice'
age = 18
print(f'My name is {name}, and I am {age} years old.')
输出结果为:
My name is Alice, and I am 18 years old.
总结
正则表达式和格式化输出是 Python 中非常常用的两种技术,它们可以帮助我们更方便地处理字符串和输出数据。掌握了这两种技术,可以大大提高我们的编程效率。
原文地址: https://www.cveoy.top/t/topic/oPMk 著作权归作者所有。请勿转载和采集!