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

如何将列表作为参数传递给Python类中的方法?

问题原因&修正方案

你写的代码存在3处核心错误,依次是:

  • 缩进错误:Python对缩进规则要求严格,类下定义的实例方法需要缩进1层(通常为4个空格),你的def passArray没有缩进,不属于Solution类的成员,直接会触发语法报错。
  • 类型注解依赖缺失:如果你使用的是Python3.8及更早版本,代码里的List[int]需要先从typing模块导入;Python3.9+可以直接用内置的list[int],不需要额外导入。
  • 方法调用逻辑错误:passArray是类的实例方法,不能直接调用,需要先实例化Solution类得到实例对象,再通过实例调用方法;同时传参时不需要加nums:前缀,直接传入列表参数即可。
正确可运行代码
# Python3.9+版本可以省略下面这行导入,直接把List[int]替换为list[int]
from typing import List

class Solution:
    def passArray(self, nums: List[int]) -> None:
        """
        practice
        """
        print(nums)

# 先实例化类,再调用对应方法
sol = Solution()
sol.passArray([1,2,3])
运行结果
[1, 2, 3]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 05:45:01