从命令行运行python和使用python命令提示符之间的区别

从命令行运行python和使用python命令提示符之间的区别,python,cmd,Python,Cmd,我有一个python文件,它在每次从命令行以“python file.py”的形式运行时都能正常工作,但当我通过双击python命令行实用程序来运行它时,它不能正常工作。运行该程序的两种方法在环境方面是否存在一些差异 编辑:该程序是一个数据包嗅探实用程序(使用scapy.sniff()),它使用twisted服务器发送结果。当从命令行运行时,嗅探过滤器会选择正确的数据包,但在python命令行工具中打开时不会选择正确的数据包。您的问题可能是您希望在运行程序时通过双击弹出的小窗口停留在那里。通过将

我有一个python文件,它在每次从命令行以“python file.py”的形式运行时都能正常工作,但当我通过双击python命令行实用程序来运行它时,它不能正常工作。运行该程序的两种方法在环境方面是否存在一些差异


编辑:该程序是一个数据包嗅探实用程序(使用scapy.sniff()),它使用twisted服务器发送结果。当从命令行运行时,嗅探过滤器会选择正确的数据包,但在python命令行工具中打开时不会选择正确的数据包。

您的问题可能是您希望在运行程序时通过双击弹出的小窗口停留在那里。通过将以下内容添加到脚本末尾,可以将其保留在那里:

raw_input("Press any key to continue...")

当你双击它时,它是如何失败的?这个程序是做什么的?如果只是打印数据,则双击后,用于输出的命令提示符将不会出现。这是一个数据包嗅探实用程序(使用scapy.sniff()),它使用twisted服务器发送结果。嗅探过滤器在从命令行运行时选择正确的数据包,但在python命令行工具中打开时不会选择正确的数据包。它使用scapy.sniff()阻止并保持窗口活动。区别在于cmd版本过滤正确的数据包,而python命令行版本不过滤正确的数据包。有时人们(意外地)将一个版本的python设置为在CLI上运行(在他们的路径中),但在双击python文件时将另一个版本设置为运行。(包也可能发生同样的情况)。检查并确保情况并非如此。这给了我希望,因为我的许多虚拟机都有多个python版本,但遗憾的是,这一版本只有2.6.3(scapy要求)。然后唯一可能是问题的地方就是运行python的目录。这是clipython和双击Python之间(通常)唯一不同的地方。