Python 如何检查字符串或字符串的子串是否以后缀结尾
要在Python中检查字符串或字符串的子串是否以后缀结尾,有几种方法可以实现。以下是一些示例:
使用endswith()方法
endswith()方法检查字符串是否以指定的后缀结尾,并返回一个布尔值。要检查字符串的子串是否以后缀结尾,可以使用字符串切片获取子串,然后对其应用endswith()方法。
示例
string = "hello world"
suffix = "world"
if string.endswith(suffix):
print("String ends with suffix")
输出
String ends with suffix
使用re模块
re模块提供了对正则表达式的支持。你可以使用正则表达式在Python中匹配字符串的结尾处的模式。以下是一个示例:
示例
import re
string = "hello world"
suffix = "world"
pattern = re.compile(suffix + "$")
if pattern.search(string):
print("String ends with suffix")
输出
String ends with suffix
使用字符串切片
您还可以使用字符串切片来检查字符串或字符串子串是否以后缀结尾。
示例
string = "hello world"
suffix = "world"
if string[-len(suffix):] == suffix:
print("String ends with suffix")
输出
String ends with suffix
为了检查一个字符串或字符串的子串是否以特定的后缀结尾,你可以使用Python中的str.endswith()方法。该方法如果字符串或子串以指定的后缀结尾,则返回True,否则返回False。 例子 在这个例子中,我们定义了一个字符串my_string,并且检查它是否以指定的后缀”aboard!”结尾。由于它确实以这个后缀结尾,程序打印出”The string ends with ‘aboard!'”。
# Define a string
my_string = "Welcome, aboard!"
# Check if the string ends with "world!"
if my_string.endswith("aboard!"):
print("The string ends with 'aboard!'")
else:
print("The string does not end with 'aboard!'")
结果
The string ends with 'aboard!'
示例
在这个示例中,我们定义了一个后缀列表和一个字符串my_string。然后我们使用一个生成器表达式和any()函数来检查my_string是否以后缀列表中的任何一个后缀结尾。由于my_string以后缀”.jpg”结尾,它是列表中的一个后缀,因此程序会输出”The string ends with one of the suffixes in the list”。
# Define a list of suffixes
suffixes = [".jpg", ".png", ".gif"]
# Define a string
my_string = "picture.jpg"
# Check if the string ends with any of the suffixes
if any(my_string.endswith(suffix) for suffix in suffixes):
print("The string ends with one of the suffixes in the list")
else:
print("The string does not end with any of the suffixes in the list")
输出
The string ends with one of the suffixes in the list
示例
在这个例子中,我们检查字符串my_string是否以指定的后缀”world”结尾。然而,由于my_string实际上以”world!”结尾,所以程序打印出”The string does not end with ‘world'”。
# Define a string
my_string = "Hello, world!"
# Check if the string ends with "world"
if my_string.endswith("world"):
print("The string ends with 'world'")
else:
print("The string does not end with 'world'")
输出
The string does not end with 'world'
示例
在这个示例中,我们检查字符串my_string是否以后缀列表中的任何一个后缀结尾。然而,由于my_string以”.txt”结尾,而此后缀不在列表中,因此程序打印出”The string does not end with any of the suffixes in the list”。
# Define a list of suffixes
suffixes = [".jpg", ".png", ".gif"]
# Define a string
my_string = "document.txt"
# Check if the string ends with any of the suffixes
if any(my_string.endswith(suffix) for suffix in suffixes):
print("The string ends with one of the suffixes in the list")
else:
print("The string does not end with any of the suffixes in the list")
输出
The string does not end with any of the suffixes in the list