能够导入模块,但不能从中导入内容

2024-09-21 06:46:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我在mac上(第一次)使用pycharm和可视代码

在pycharm上,我使用的是一个venv,已经安装了scapy,可以看到它安装在解释器包管理器中,并且“导入scapy”下没有红线。当我尝试从该包“从scapy导入UDP”导入任何内容或使用scapy“scapy.UDP”中的任何内容时,就会出现问题----各错误如下所示

ImportError: cannot import name 'UDP' from 'scapy' (/Users/{KEVIN}/PycharmProjects/UDP/venv/lib/python3.9/site-packages/scapy/__init__.py)

AttributeError: module 'scapy' has no attribute 'UDP'

另一方面,我尝试使用可视化代码和系统python,代码运行时没有问题,但我不能右键单击UDP()并跳转到类定义,它说找不到定义?我觉得这一定是一个与mac相关的问题,但我似乎无法理解


Tags: 代码import内容管理器定义venvmac错误
2条回答

尝试: from scapy.all import *来自https://scapy.readthedocs.io/en/latest/functions.html

这行吗

UDP不是直接在scapy下,您需要这样做

from scapy.layers.inet import UDP

然后右键单击UDP()并跳转到类定义

以下两种进口产品也适用于我:

venv$ python
Python 3.8.10 (default, Sep 28 2021, 16:10:42) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from scapy.ansmachine import AnsweringMachine
>>> from scapy.all import UDP
>>>

请在安装前仔细检查

相关问题 更多 >

    热门问题