gpt4 book ai didi

查找字符串是否包含多个值的 Pythonic 方法?

转载 作者:太空宇宙 更新时间:2023-11-04 08:30:58 26 4
gpt4 key购买 nike

我试图通过文件列表查找所有 exceltxtcsv 文件并将它们附加到列表

goodAttachments = [i for i in attachments if str(i).split('.')[1].find(['xlsx','csv','txt'])

这显然是行不通的,因为 find() 需要一个字符串而不是一个列表。我应该在列表理解中尝试列表理解吗?

最佳答案

无需拆分或使用双列表理解。您可以使用 str.endswith 将字符串元组作为参数进行检查:

goodAttachments = [i for i in attachments if str(i).endswith(('.xlsx', '.csv', '.txt'))]

如果真的要拆分:

goodAttachments = [i for i in attachments if str(i).split('.')[-1] in ('xlsx', 'csv', 'txt')]

第一种方法更好,因为它考虑了没有扩展名的文件。

关于查找字符串是否包含多个值的 Pythonic 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52973425/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com