Python如何从列表返回含不区分大小写子串的原格式字符串
原因说明
原有代码的列表推导式遍历的是提前转成小写的元素集合,最终返回的自然是丢失了原始大小写的小写字符串,不符合需求。
修正方案
判断匹配时仅对原始元素做临时的大小写转换用于比对,返回值保留原始元素即可,同时建议对搜索子串也做大小写统一处理,避免子串含大写字符时匹配失效:
entriesList = ['CSS', 'Django', 'Git', 'HTML', 'Python'] substring = "g" def substringSearch(substring, entriesList): target_sub = substring.casefold() return [item for item in entriesList if target_sub in item.casefold()] print(substringSearch(substring, entriesList))
输出结果
['Django', 'Git']
内容的提问来源于stack exchange,提问作者onlyo
相关产品推荐
相关产品推荐

