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

Python列表append报Native JS does not support indexing错误解决

问题说明
  • 需求:输入一组每行一个的非负整数,以0作为输入结束标志,输出序列中第一个最大值的索引。
  • 遇到问题:实现代码运行时报错Native JS does not support indexing,初步判断lista.append[n]写法存在问题,不清楚具体错误原因和修复方案。

原错误实现代码:

n = -1
lista = [] 
while n!= 0:
    n = int(input())
    lista.append[n]
print(max(lista), lista.index(max(lista)))
错误原因

核心错误有两处:

  1. append是Python列表的内置方法,调用方法需要用小括号()传参,你写的lista.append[n]用了方括号[]——这是Python里索引/下标访问的语法,相当于尝试对append这个函数对象做下标取值,才会触发“不支持索引”的相关报错,部分在线编程环境语法解析异常时就会抛出你看到的Native JS相关报错提示。
  2. 现有逻辑会把作为结束标志的0也存入列表,会干扰最大值计算和索引结果。
修复后代码
n = -1
lista = []
while n != 0:
    n = int(input())
    if n == 0:
        break
    lista.append(n)
max_value = max(lista)
# 注:Python列表默认索引从0开始计数,如果题目要求位置从1开始算,结果+1即可
print(lista.index(max_value))
修复点说明
  • 把错误的下标写法lista.append[n]改为正确的方法调用写法lista.append(n),解决语法报错。
  • 增加结束标志判断,读到0时直接跳出循环,不把0存入目标序列,保证计算的是输入的有效非负整数序列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 11:27:14