You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python列表推导式筛选第三个字符为'i'的城市名称列表?

解决方法

直接在列表推导式的条件中先判断城市名称长度是否至少为3,再检查第三个字符是否为'i':

new_list = [word for word in old_list if len(word) >= 3 and word[2] == 'i']

错误原因

你之前的代码触发IndexError,是因为原列表里存在长度不足3的城市名称(比如只有1-2个字符的字符串),直接访问索引2会超出字符串的有效索引范围。先通过len(word) >=3过滤掉这些短字符串,就能安全地检查第三个字符了。

内容的提问来源于stack exchange,提问作者Fran Rodriguez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 19:10:59