Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我不能在python3中的“from scapy.all import*”之前“import datetime”?_Python_Datetime_Import_Scapy - Fatal编程技术网

为什么我不能在python3中的“from scapy.all import*”之前“import datetime”?

为什么我不能在python3中的“from scapy.all import*”之前“import datetime”?,python,datetime,import,scapy,Python,Datetime,Import,Scapy,好的,也许我遗漏了一些非常明显的东西,但似乎我无法在从scapy.all import*导入之前导入datetime。如果在从scapy.all import*导入之后导入datetime,则效果良好。我不明白 榜样;这不管用 #!/usr/bin/env python3 import os import datetime from scapy.all import * current_time = datetime.datetime.now()

好的,也许我遗漏了一些非常明显的东西,但似乎我无法在从scapy.all import*导入之前导入datetime。如果在从scapy.all import*导入之后导入datetime,则效果良好。我不明白

榜样;这不管用

    #!/usr/bin/env python3
    import os
    import datetime
    from scapy.all import *
    current_time = datetime.datetime.now()
    print(current_time)
但这确实

    #!/usr/bin/env python3
    import os
    from scapy.all import *
    import datetime
    current_time = datetime.datetime.now()
    print(current_time)

我使用的是Arch Linux、Python3和最新的scapy。

只是比较两个代码片段的猜测,但我怀疑您对编程的乐趣表示欢迎,这正是导入*是一种糟糕做法的原因

scapy也有一个datetime方法,它没有比较两个包之间的定义,因此在这种情况下,导入顺序很重要,因为datetime的定义被覆盖

最好只导入您需要的内容,例如:

#!/usr/bin/env python3
import os
import datetime
from scapy.all import sr, srp
current_time = datetime.datetime.now()
print(current_time)

我只是想比较一下你的两个代码片段,但我怀疑你对编程的乐趣表示欢迎,这正是为什么import*是一种糟糕的做法

scapy也有一个datetime方法,它没有比较两个包之间的定义,因此在这种情况下,导入顺序很重要,因为datetime的定义被覆盖

最好只导入您需要的内容,例如:

#!/usr/bin/env python3
import os
import datetime
from scapy.all import sr, srp
current_time = datetime.datetime.now()
print(current_time)

请详细说明不起作用的原因。到底发生了什么?你收到错误信息了吗?如果你这样做了,发布它,包括完整的堆栈跟踪。下面的答案是有意义的。但是,如果它可能会帮助其他人,我将发布错误;AttributeError:类型对象“datetime.datetime”没有属性“datetime”,请详细说明该属性不起作用。到底发生了什么?你收到错误信息了吗?如果你这样做了,发布它,包括完整的堆栈跟踪。下面的答案是有意义的。但是,如果它可能会帮助其他人,我将发布错误;AttributeError:type object'datetime.datetime'没有属性'datetime',特别是scapy.all导出datetime.datetime,因此datetime将是OP有问题的代码中的类,而不是模块。这也是为什么通常不建议使用import*的原因:p更准确地说,您甚至应该从scapy.sendrecv import sr执行此操作,srp而不是使用scapy.all更确切地说,scapy.all导出datetime.datetime,因此datetime将是OP问题代码中的类,而不是模块。这也是为什么通常不建议使用import*的原因:p更准确地说,您甚至应该从scapy.sendrecv import sr、srp执行导入操作,而不是使用scapy.all