0

バッチ ファイル (render.bat) で実行する必要がある Python スクリプト (test1.py) を取得しました。

質問1:

まず、test1.py に定義がありましたが、常に実行に失敗し、何も起こりませんでした。誰かが親切に理由を説明できますか?

import os
def test01 :
   os.system('explorer')

そしてバットファイルで:

python c:/test01.py

しかし、defを削除するとすぐに機能しました。なぜこれが起こったのかを知りたいだけです。

質問2:

次のようなものを実行できるように、render.bat から「レンダリング」文字列を Python スクリプトの文字列入力として取得するにはどうすればよいですか。

import os
def test1(input) :
   os.system("explorer " + input) 

「入力」は.BATファイル名から取得されますか?

4

3 に答える 3

0

質問 1: Python のキーワード def は関数を定義します。ただし、関数を使用するには、明示的に呼び出す必要があります。

import os
def test01(): # do not forget ()
   os.system('explorer')

test01() # call the function
于 2012-04-12T05:19:05.133 に答える
0

call1)タスクを達成するには、実際に機能が必要です。

2)%0実行中のスクリプトを参照します。そのため、いいねを作成しtest.bat fileます

@ echo off
echo %0

出力 =test.bat

.bat出力から拡張子を取り除くことができます。

于 2012-04-12T05:21:13.517 に答える
0
  1. 関数は、呼び出さない限り実際には何もしません。test01()スクリプトの最後に置いてみてください。

  2. %0を含む、呼び出されたバッチ ファイルの完全な.bat名前が表示されます。おそらく、バッチ ファイルよりも Python の方が簡単に削除できます。

于 2012-04-12T05:18:09.810 に答える