0

如何将 .py 文件与打开 CMDpy的文件名相关联?也许在一个.bat文件中?

4

2 回答 2

1

对不起我糟糕的英语,如果我坚持你已经掌握的科目,这是我在这里的第一个建设性答案;p

我不确定您想要实现什么,但从您的问题及其标签中,我假设您想要:

  • 通过双击从文件资源管理器运行包含 python 脚本的“.py”文件

  • 在此操作后打开一个 cmd.exe 窗口,并解释您的 python 脚本

  • 有一种方法可以查看此 scipt 输出,而无需依赖能够每毫秒喘气 65536 个字符的超人眼睛

所以基本上,如果你有一个打印“Hello World!”的脚本,你想点击它,然后在 cmd.exe 窗口中看到文本“Hello World!” 显示以验证您的脚本是否正常工作?简而言之,你是对的,一个 .bat 文件就足够了,即使有一大堆替代方案,包括可执行文件生成来嵌入一个完整的 python 解释器(参见http://www.py2exe.org/ ),或者只是在脚本末尾添加一个等待循环,但是关联一个批处理脚本可能是您的情况下最轻松和最简单的解决方案。

如您所见,将 .py 文件与 python 解释器关联将运行您的脚本,但控制台窗口将在完成后立即消失,而不会让您有时间考虑输出。您只需要将 .py 文件(右键单击 -> 打开方式,如果您想以编程方式进行,可以在 Windows 注册表中设置)与 .bat 脚本相关联,即运行脚本等到你准备好“离开”。

这个批处理脚本会将您单击的 python 脚本作为参数,使用您的 python 解释器运行它并暂停它的执行,等待您的输入然后离开。由于默认的 windows 文件关联将执行您的目标程序并将执行的文件传递给它(应该是单击或“启动 XXX”命令),因此非常简单,批量执行此操作的砖块是:

  • program_name 参数:直接调用外部命令,因此“python my_script.py”将运行 python.exe 程序(无需添加“.exe”或“'.com”部分,因为它是 windows 的明显案例) my_script.py 作为参数,前提是您的 python 可执行目录位于 PATH 环境变量中,否则您必须提供完整路径,即: "C:\Python27\python.exe my_script.py" 。

  • %X :引用发送到脚本的命令行参数(第一个是 %1,然后是 %2 等)

  • pause :将显示消息“Press any key to continue ...”的命令,显然在离开脚本之前等待任何键

  • 最终,@echo off :避免在执行之前打印每个批处理命令

因此,假设您的 python 解释器安装在 C:\Python27 中(请替换为您的 python.exe 的任何版本/位置,或者如果它在您的 PATH 中,则仅替换为“python”)您的批处理脚本可能看起来像这样:

@echo off
C:\Python27\python.exe %1
pause

将其保存在某处,将其与 .py 文件相关联,然后就完成了。高温高压

于 2019-02-13T05:16:44.237 回答
0

您可以通过两种不同的方式进行操作:

首先,您可以将.py文件重命名为.pyw并打开它,脚本将立即执行(使用pythonw.exe),但这不会向您显示控制台输出。

或者您可以简单地将您的.py文件与python.exe将显示控制台输出的标准相关联。

于 2019-02-13T10:19:51.993 回答