4

バッチファイルに次のコードがあります

@ECHO OFF
SET /P NAME=Enter name:
SET /P GENDER = Enter age:
SET /P AGE = Enter gender:
python test.py %NAME% %GENDER% %AGE%
PAUSE

これがtest.pyのコードです

import sys

print len(sys.argv)

for arg in sys.argv:
    print arg

ここに出力があります

Enter name:Dodo
Enter age:1
Enter DB gender:M
2
test.py
Dodo
Press any key to continue . . .

私はpython2.5を使用しています。年齢と性別も渡すにはどうすればよいですか?私はPythonとバッチプログラミングの両方に慣れていないので、簡単にやってください:)

4

2 に答える 2

5

=inの前後にスペースを使用しないでsetください:

SET /P NAME=Enter name:
SET /P GENDER=Enter age:
SET /P AGE=Enter gender:

それ以外の場合は、スペースで終わる変数を取得し、のように使用する必要があります%GENDER %

于 2012-06-27T06:48:18.650 に答える
1

引用符で囲んでみてください。等号のそばにスペースもありますが、それがバッチの問題かどうかはわかりません...

スペース:

SET /P GENDER = Enter age:
SET /P AGE = Enter gender:

次の場合はなし:

SET /P NAME=Enter name:
于 2012-06-27T06:46:20.627 に答える