PyTorch:错误消息“火炬没有 [...] 成员”
Posted
技术标签:
【中文标题】PyTorch:错误消息“火炬没有 [...] 成员”【英文标题】:PyTorch : error message "torch has no [...] member" 【发布时间】:2018-10-23 12:01:57 【问题描述】:晚上好, 我刚刚安装了 PyTorch 0.4.0,我正在尝试执行第一个教程“什么是 PyTorch?” 我编写了一个 Tutorial.py 文件,我尝试使用 Visual Studio Code 执行该文件
代码如下:
from __future__ import print_function
import torch
print (torch.__version__)
x = x = torch.rand(5, 3)
print(x)
不幸的是,当我尝试调试它时,我收到一条错误消息: “torch 没有 rand 成员”
我可以尝试的任何 Torch 成员函数都是如此
有人可以帮帮我吗?
【问题讨论】:
print(torch.__version__)
的结果是什么?
还有print(torch.__path__)
的结果是什么?
感谢您的回答,结果如下:0.4.0 ['D:\\Anaconda\\lib\\site-packages\\torch']
这里有同样的问题。
【参考方案1】:
如果您的问题没有解决方案或其他人遇到它。
由于 Pylint(Python 静态代码分析工具)未将 rand
识别为成员函数而引发错误。您可以将 Pylint 配置为忽略此问题,也可以将 Torch 列入白名单(更好的解决方案),通过将以下内容添加到您的 .pylintrc
文件中来消除 lint 错误。
[TYPECHECK]
# List of members which are set dynamically and missed by Pylint inference
# system, and so shouldn't trigger E1101 when accessed.
generated-members=numpy.*, torch.*
在 Visual Studio Code 中,您还可以在用户设置中添加以下内容:
"python.linting.pylintArgs": [
"--generated-members=numpy.* ,torch.*"
]
此问题在 PyTorch GitHub 页面上讨论 here。
【讨论】:
只要我使用 .pylintrc 或 VSCode 设置执行此操作,错误就会消失,但 pylint 抱怨更像是缺少文档字符串等。 @AmirHosseinF 查看 Github 问题,除了错误之外,还有其他参数可以抑制其他警告 要清楚,这在settings.json
中,可以通过文件-> 首选项-> 设置访问,然后在文本编辑器中编辑设置。
这对我使用 VSCode 1.50.1 和 PyTorch 1.7.0 不起作用
你能配置类似的东西来选择性地忽略特定包子集的import-error
和/或no-name-in-module
错误吗?【参考方案2】:
来自pylint no member issue but code still works vscode的快速解决方案
Press: CTRL + Shift + P
Click on "Preferences: Open Settings (JSON)"
Add this line into JSON : "python.linting.pylintArgs": ["--generate-members"]
【讨论】:
PyLint 没有参数generate-members
。您的意思是像上面的答案一样通过使用--generated-members torch
吗?
我只在 settings.json 文件中添加了 "python.linting.pylintArgs": ["--generate-members"]
行,这对我来说已经足够了。希望对你有帮助【参考方案3】:
如果有人仍然面临问题,那么这里是对我有用的解决方案。
转到 vs 代码设置,file>preferences>settings
或使用快捷方式 ctrl+,
并搜索 python.linting.pylintPath
。
修改 pylint 路径,转到您的 anaconda installation directory>pkgs>pylint>scripts
并将路径复制粘贴到设置中并在路径末尾添加 pylint
,类似于 (anaconda installation directory)\pkgs\pylint-2.4.4-py37_0\Scripts\pylint
【讨论】:
【参考方案4】:在 VS Code 中,可以通过以下方式选择 flake8
Ctrl + Shift + P -> 选择 linter -> flake8
Source
【讨论】:
以上是关于PyTorch:错误消息“火炬没有 [...] 成员”的主要内容,如果未能解决你的问题,请参考以下文章
在 Google Colab pro -Pytorch 中随机接收错误消息
RuntimeError:cuDNN 错误:CUDNN_STATUS_NOT_INITIALIZED 使用 pytorch
Pytorch: Building 3D Dense Network 遇到错误 Adaptive_avg_pool3d: output_size must be 3
Pytorch-geometric: Creating Message Passing Networks 构建消息传递网络教程