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

如何用Python遍历tuple元组筛选首字母为N的州名缩写存入新列表

你代码的核心逻辑错误出在循环内的判断条件:你写的if i == letterN是判断整个州名缩写等于字符串"N",但所有州名缩写都是2位字符,永远不可能匹配成功,所以最终listN会是空列表。

你需要判断的是州名缩写的首字符为N,可以直接用Python字符串内置的startswith()方法实现,修改判断条件即可。

修正后完整代码

states = ("AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DC", "FL", "GA", 
          "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", 
          "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", 
          "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", 
          "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY")

letterN = "N"
listN=[]

for i in states:
    # 修正判断条件,判断是否以N开头
    if i.startswith(letterN):
       listN.append(i)

运行后得到的listN结果为:['NE', 'NV', 'NH', 'NJ', 'NM', 'NY', 'NC', 'ND']

你也可以用更简洁的列表推导式实现,效果完全一致:

listN = [i for i in states if i.startswith(letterN)]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 14:06:03