2012-01-03 9 views
1

基本的に私はPythonでかなり新しくなっていますが、私はすべての基本ツールI私は、変数を使用したいとユーザが設定した変数をos.system()コマンドのパラメータとして渡す

os.system('ping'.ip) 

:私のコードは、これまで以下である仕事で使用します。すべてが正常に動作することを、今

import os 
def main(): 
    print "Main Menu.\n" 
    print "1. Ping yourself.\n" 
    print "2. Ping someone else.\n" 
    opt = raw_input ("Please enter a number:- ") 
    if opt == "1": 
      os.system('ping 127.0.0.1') 
    if opt == "2": 
      ip = raw_input ("Please enter IP:- ") 
      os.system('ping'.ip) 

main() 

、しかし、私はここで、このライン上で立ち往生しているように見えます10行目でコマンドに使用されます。これは簡単な修正だと思っています。

ありがとう、

ロス。

答えて

1

コマンドと引数の間にスペースが必要です。

6

.、ないあなたがスペースを必要とし、文字列連結演算子は+です:

os.system("ping " + ip) 

あなたはまた、書式設定文字列を使用することができます。

os.system("ping %s" % ip) 
+0

ありがとうございました。私は – RossDoughty

+0

tha n彼の答えを受け入れる – RanRag

-2

あなた、それは正常に動作し得れば、何が起こりますかユーザーが次のように入力した場合:

127.0.0.1; rm -rf/
+0

しないでください...彼はこのコマンドが何を知っていない場合... –

関連する問題