我想与.foobar
设置的所有文件的默认程序的文件扩展名的Python程序,我有以下问题:打开文件与Python程序
- 我需要分配
.py
或.pyc
文件作为默认程序打开.foobar
文件? - 如何在Python程序中获取文件名?
我想在Windows中通过双击文件名来打开我的脚本中的文件。
我想与.foobar
设置的所有文件的默认程序的文件扩展名的Python程序,我有以下问题:打开文件与Python程序
.py
或.pyc
文件作为默认程序打开.foobar
文件?我想在Windows中通过双击文件名来打开我的脚本中的文件。
这里有快速解决方案
首先:Python文件是一个脚本,而不是一个exe ...所以你直接无法使用编译器生成EXE。如果可以,请纠正我。 http://www.py2exe.org/
第二种方法:(稍差的方法) 您需要安装位置的exe执行机器上蟒。 假设在C#或其他语言中,您可以制作在单击时执行python脚本的exe文件。 见例如
//in the main function
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = false;
startInfo.UseShellExecute = false;
startInfo.FileName = "c:/python27/python.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
//your script path
startInfo.Arguments = "myalgorithm.py filenametodisplay.myext";
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
第三种方法(见@Saad阿卜杜拉对其他可能性的答案)
而是编译一个.exe
运行在Windows Python脚本的。这也假定你已经在目标机器上安装了Python。但不需要重新编译或.dll
's。
创建.bat
文件:
蟒 “path_to_py.py” %1
暂停
的%1
经过.bat
文件的第一命令行参数(=作为Python运行时的第二个命令行参数。 pause
保持命令行打开,但使用例如pyplot
东西时不需要。
更新.py
文件获取.foobar
文件的路径:
进口SYS FNAME = sys.argv中[1]
在我们需要第二个命令行参数的Python脚本(因为第一个命令行参数是Python脚本本身的路径)。
.bat
文件作为默认程序打开文件.foobar
是的..这也是另一种方法......但.bat可供任何用户访问......而在编译方法中,您可以使用任何加密算法,如使用您的隐藏密钥来获取python代码的xor ...以及程序运行它生成python代码临时位置,并启动python脚本...你的脚本有点保存从用户 顺便说一句,最后它取决于你... :) –
所以,你想在'something.foobar'启动您的Python脚本双击? – jonrsharpe
谷歌搜索“Python中的命令行参数”。这个问题已经回答了很多次。 –
@jonrsharpe是 – Matthias