2

我最近一直在学习 python,当我注意到这段代码引起的以下警告时,我在 Pycharm 中尝试了一些东西:

“Iterable”类没有定义“__getitem__”,因此不能在其实例上使用运算符“[]”。

def test_list(var):
"""
Parameters
----------
var : list


Returns
-------
int
"""
return var[0]

我注意到在代码中用 'list[int]' 替换 'list' 可以消除警告,但使用 'list of int' 不会(如果我正确理解 numpydoc 指南,这是做事的正确方法)。那么我到底做错了什么?

4

2 回答 2

-1

我已经尝试过了,它工作正常。

def funct1(var):
    return var[0]

print(funct1([1,2,3]))

或者

def funct1(var):
    return var[1]

print(funct1(["V","A","I"]))
于 2020-01-10T10:04:20.140 回答
-1

Pycharm 具有可能有用的类型提示功能。

这会导致警告。皮查姆说,

PyCharm 提供了多种方法来帮助检查和检查脚本中对象的类型。PyCharm 支持使用类型模块和 PEP 484 定义的格式在函数注释和类型注释中进行类型提示。

这似乎只是从 Python 3.5 开始。这是 pycharm 社区中一个非常讨论的警告。单击此处从社区获取有关 pycharm 中类型提示的更多信息。

于 2020-01-10T10:07:13.263 回答