2011-12-08 8 views
1

私は一般的にはPythonにはかなり新しく、ほとんどはファイルを簡単に動かすために使っています。最近私がやったことは、raw_inputを使ってディレクトリ名変数として渡すための名前を取得することでした。しかし、私はgetoptと言って、raw_inputがオプションとしてユーザにプロンプ​​トを出す変数を試してみるだけで時間と労力を節約することができると考えました。しかし、私は正確にやりたいことの例は見つけられません。生の入力をオプションとして取得しますか?

私にプロンプ​​トが出るのを待つのではなく、ちょうどmeego.pyショートネーム= exampleとタイプして、それをすることができます。これは何かをするのに十分な簡単なものですか?ここで

は、私は基本的に

var = raw_input("Shortname=") 

print 'starting: ' + str(var) 

svn_app = svn_root + "/" + var  


shutil.copyfile(riproot + '/images/ApplicationIcon.png', 
      svn_app + '/images/ApplicationIcon.png') 

print 'done: ' + str(var) 

答えて

3

Python> = 2.7の場合は、argparseモジュール(標準ライブラリの一部です)を使用してください。

2.3を持つ場合< = Python < 2.7 install the argparse module

Pythonの将来はargparseモジュールの方に向いているか、すでにargparseモジュールを使用しているので、古いモジュール(optparseやgetoptなど)の代わりにそのモジュールを使用するようにしてください。


import argparse 

parser=argparse.ArgumentParser() 
parser.add_argument('--shortname') 
args=parser.parse_args() 

print 'starting: ' + str(args.shortname) 

は次のように使用することができます:

% prog.py --shortname example 
starting: example 
+0

"あなたは2.7 __ <__ Python > = 2.3を使用している場合"、もしかして? –

+0

ありがとう、完璧に働いた! – Picard102

+0

@ジョン・ドー:いいえ、もう少し考えてみてください:)(それはそれが最初に言ったことなのですか?) –

2

代わりのそのは、より進化しoptionParserを試すのgetopt持っていないものです。

from optparse import OptionParser 

if __name__ == __main__: 
    parser = OptionParser() 
    parser.add_option("-f", "--file", dest="filename", 
         help="write report to FILE", metavar="FILE") 
    (optionss, args) = parser.parse_args() 

    if options.filename: 
     move_file(options.filename) 

このモジュールも内蔵あなた-hすなわち--helpサポートのためのサポートを提供します。試してみてくださいyourscript.py -h

関連する問題