1、起因
今天用 Python 处理一些 URL,需要留下文件类型的 URL,然后就理所当然的写成以下的句式,发现实现不了我想要的效果
a = [
"../../../../images/yc-logo.png",
"../../../../images/yc-logo.png",
"../../../../images/iconfont.css",
"../../../../images/main.css",
"../../../../images/base.css",
"/assets/js/main.aa150fc5.js",
"/assets/js/url.6a11f7be.js",
"/assets/js/debounce.c3f1e98b.js",
"/assets/js/jsx-runtime.40bbe6eb.js",
"/assets/js/_commonjsHelpers.b5cbd927.js",
"/assets/js/download.2306183f.js",
"http://bdimg.share.baidu.com/static/api/css/share_style0_16.css?v=8105b07e.css",
"javascript:doZoom(16)",
"javascript:doZoom(14)",
"javascript:doZoom(12)",
"javascript:print()",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220120/6377829071580078127600762.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/63794080993792101573245891.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/63794080994292101554106751.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/6379408099440147655911442.pdf"
]
for i in range(len(a)):
if '.pdf' or '.txt' or '.docx' or '.doc' in a[i]:
print(a[i])
else:
pass
???黑人问号,为啥输出不了文件类型的链接呢,经过不懈努力终于被我发现问题所在。
2、解决办法
修正为
a = [
"../../../../images/yc-logo.png",
"../../../../images/yc-logo.png",
"../../../../images/iconfont.css",
"../../../../images/main.css",
"../../../../images/base.css",
"/assets/js/main.aa150fc5.js",
"/assets/js/url.6a11f7be.js",
"/assets/js/debounce.c3f1e98b.js",
"/assets/js/jsx-runtime.40bbe6eb.js",
"/assets/js/_commonjsHelpers.b5cbd927.js",
"/assets/js/download.2306183f.js",
"http://bdimg.share.baidu.com/static/api/css/share_style0_16.css?v=8105b07e.css",
"javascript:doZoom(16)",
"javascript:doZoom(14)",
"javascript:doZoom(12)",
"javascript:print()",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220120/6377829071580078127600762.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/63794080993792101573245891.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/63794080994292101554106751.pdf",
"https://www.lnypcg.com.cn/ueditor/net/upload/file/20220722/6379408099440147655911442.pdf"
]
for i in range(len(a)):
# 修改下面这一句
if '.pdf' in a[i] or '.txt' in a[i] or '.docx' in a[i] or '.doc' in a[i]:
print(a[i])
else:
pass
就可以输出我想要的结果啦
其实原因很简单,我们的结果是一个字符串,而不是bool值