我有以下代码:
url = 'abcdc.com' print(url.strip('.com'))
我期望: abcdc
abcdc
我有: abcd
abcd
现在我做
url.rsplit('.com', 1)
有没有更好的办法?
strip并不意味着“删除此子字符串”。x.strip(y)视为y一组字符,并从的两端去除该组中的所有字符x。
strip
x.strip(y)
y
x
在 Python 3.9及更高版本上, 您可以使用removeprefix和removesuffix方法从字符串的任一侧删除整个子字符串:
removeprefix
removesuffix
url = 'abcdc.com' url.removesuffix('.com') # Returns 'abcdc' url.removeprefix('abcdc.') # Returns 'com'
相关的Python增强建议是PEP-616。
在 Python 3.8及更早版本上, 您可以使用endswith和切片:
endswith
url = 'abcdc.com' if url.endswith('.com'): url = url[:-4]
或正则表达式:
import re url = 'abcdc.com' url = re.sub('\.com$', '', url)