2

Python スクリプトを開始して、スクリプトに送信するパラメーターを取得するのに問題があります。

ここに画像の説明を入力

次のテスト スクリプトを python comand で開始するとわかるように、動作します。そうでない場合は、スクリプトに引数が渡されません:/

import optparse
import sys

oOptParse = optparse.OptionParser()

oOptParse.add_option("--arg", dest="arg", help="Test param")
oOptParse.set_default("arg", None)

if len(sys.argv) == 1:
    oOptParse.print_help( )
    sys.exit( 1 )
aOptions = oOptParse.parse_args( )
oOptions =  aOptions[0]

print (oOptions.arg)

何が問題なのか分かりますか?

どうもありがとう !

4

2 に答える 2

0

私の答えを見つけました。

次のキーのレジストリ設定に問題がありました

HKEY_CLASSES_ROOT\py_auto_file\shell\open\command 

に設定されました

"C:\Python26\python.exe" "%1" 

しかし、あるべきです

"C:\Python26\python.exe" "%1" %*
于 2013-02-21T13:12:32.487 に答える
0

Python ファイルの先頭にシバンを挿入します。

#!/usr/bin/env python

次の方法でファイルを実行可能にします。

chmod +x test.py

次のように入力します。

./test.py --arg hello

Windows システムでは、Cygwin で上記を実行するか、次の方法で拡張子 .py を Python に関連付けることができます。

C:\> assoc .py=Python.File
C:\> ftype Python.File=C:\Path\to\python.exe "%1" %*
于 2013-02-21T10:57:23.950 に答える