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

Python如何根据用户输入的索引编号从列表中选取对应字符串

功能实现解决方案

核心问题原因

  • Python中input()函数的返回值默认为字符串类型,而列表索引必须使用整数,所以直接将输入值作为索引调用会触发类型报错。

最简修正代码

仅需将用户输入显式转换为整数即可实现基础功能:

facilities = ['facility a', 'facility b', 'facility c']

for count, value in enumerate(facilities):
    print(count, value) # 直接展示编号和对应设施,用户更易读

# 将输入转换为整数类型
f = int(input('请输入你要选择的设施对应编号: '))

final_facility = facilities[f]
print(final_facility)

健壮性优化版本

上述最简代码遇到用户输入非数字、或编号超出列表范围时会报错,可增加异常校验提升可用性:

facilities = ['facility a', 'facility b', 'facility c']

# 展示可选列表
for count, value in enumerate(facilities):
    print(f"编号{count}:{value}")

while True:
    input_content = input('请输入你要选择的设施对应编号: ')
    # 校验是否为数字
    if not input_content.isdigit():
        print("输入无效,请输入纯数字编号")
        continue
    # 转换为整数
    select_idx = int(input_content)
    # 校验编号是否在有效范围内
    if 0 <= select_idx < len(facilities):
        break
    else:
        print(f"编号超出范围,请输入0到{len(facilities)-1}之间的数字")

final_facility = facilities[select_idx]
print(f"你选择的设施是:{final_facility}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:24:04