私は少なくとも 1 時間この問題に取り組んできましたが、今はあきらめています。あなたの貴重な助けが必要です..
私がやろうとしているのは、いくつかの引数を渡して、python スクリプト内で python スクリプトを実行することです。
これまでは、次のようにバット ファイルを使用してこれを行ってきました。
test.bat
...
SET fileName='c:\works\files\file.xml'
SET url='someurl'
SET table='tablename'
c:\Python27\python.exe "C:\Program Files (x86)\Google\google_appengine\appcfg.py" upload_data --config_file=C:\works\config.yaml --filename="%fileName%" --url="%url%" --kind="%table%"
これはうまくいきます。次に、次のように、別の Python スクリプト内でそのスクリプトを呼び出す必要があります。
test.py
...
fileName = 'c:\works\files\file.xml'
url = 'someurl'
table = 'tablename'
if(os.path.exists(fileName):
print 'exists!'
#launch appcfg.py here!!
else:
print 'file missing'
ファイルは正しく見つかり、'exists!
メッセージは正しく表示されますが、その python ファイルを今すぐ呼び出す方法がわかりません。これら 2 つのコマンドを試しましたが、機能しません (パスの空白が原因かもしれません)。 ? 私はそれを取り除く方法がわかりません..)
最初の試行: 失敗
os.system('c:\Python27\python.exe "C:\Program Files (x86)\Google\google_appengine\appcfg.py" upload_data --config_file=C:\works\config.yaml --filename='+fileName+' --url='+url+' --kind='+table)
2 回目の試行: 2 回失敗
subprocess.call(['c:\Python27\python.exe','"C:\Program Files (x86)\Google\google_appengine\appcfg.py" upload_data --config_file=C:\works\config.yaml --filename='+fileName+' --url='+url+' --kind='+table ])
コピー/貼り付けエラーが発生しなかったことを願っています。ポイントは、メインのpythonスクリプト内で呼び出して、非常に多くの引数を別のスクリプトに渡す方法がわからないことです..
私はあなたの手の中にいます、前もって感謝します、よろしく