使用 py2app 编译的程序,现在无法处理 sys.argv[1] 参数
Compiled program with py2app, now unable to handle sys.argv[1] argument
我有一个程序可以 运行 作为
> python transactions.py file.csv
处理提供的 CSV 文件。
我想把它编译成可执行文件,这样我的朋友就可以使用它而不必安装它需要的所有包。
py2app 编译应用程序,在 'Alias' 模式下我能够成功 运行 应用程序
> ./dist/transactions.app/Contents/MacOS/transactions.csv
但是当我完成实际的编译并且有一个
/dist/transactions.app/
目录已创建,每当我尝试 运行
> open /dist/transactions.app file.csv
程序失败
> 1/29/15 1:05:11.190 PM transactions[25848]: txn_csv = sys.argv[1]
> 1/29/15 1:05:11.190 PM transactions[25848]: IndexError: list index out of range
在我的程序中将变量设置为 sys.argv[1]
的行之后
我做错了什么,我如何 运行 这个程序使用来自 sys.argv[1] 的 CLI 参数的输入?
编辑:
您使用的 open
错误。
启动应用程序的正确命令是:
open /dist/transactions.app --args file.csv
我有一个程序可以 运行 作为
> python transactions.py file.csv
处理提供的 CSV 文件。
我想把它编译成可执行文件,这样我的朋友就可以使用它而不必安装它需要的所有包。
py2app 编译应用程序,在 'Alias' 模式下我能够成功 运行 应用程序
> ./dist/transactions.app/Contents/MacOS/transactions.csv
但是当我完成实际的编译并且有一个 /dist/transactions.app/ 目录已创建,每当我尝试 运行
> open /dist/transactions.app file.csv
程序失败
> 1/29/15 1:05:11.190 PM transactions[25848]: txn_csv = sys.argv[1]
> 1/29/15 1:05:11.190 PM transactions[25848]: IndexError: list index out of range
在我的程序中将变量设置为 sys.argv[1]
的行之后我做错了什么,我如何 运行 这个程序使用来自 sys.argv[1] 的 CLI 参数的输入?
编辑:
您使用的 open
错误。
启动应用程序的正确命令是:
open /dist/transactions.app --args file.csv