问题
通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URL Scheme等等。
解决方案
检查字符串开头或结尾的一个简单方法是使用 str.startswith()
或者是 str.endswith()
方法。比如:
file_name = 'test.txt'
print(file_name.endswith('.txt'))
True
url = 'www.google.com'
print(url.startswith('www.'))
True
如果想检查多种匹配可能,需要将所有的匹配项放入到一个元组中, 传给 startswith()
或者 endswith()
方法:
file_up = os.listdir(os.chdir('../'))
f_name = [f for f in file_up if f.endswith(('__', '.py'))]
print(file_up)
print(f_name)
['.DS_Store', 'decorator', 'module', 'cookbook', '__pycache__', 'test.py', 'class']
['__pycache__', 'test.py']
startswith() 和 endswith() 方法提供了一个非常方便的方式去做字符串开头和结尾的检查。 类似的操作也可以使用切片来实现,但是代码看起来没有那么优雅。比如:
print(file_name[4:] == '.txt')
print(url[:4] == 'www.')
True
True
网友评论