ホームページ > バックエンド開発 > Python チュートリアル > sys.argv[]の使い方を詳しく解説

sys.argv[]の使い方を詳しく解説

高洛峰
リリース: 2017-03-27 16:59:03
オリジナル
5204 人が閲覧しました

sys.argv[] はコマンド ライン パラメーターを取得するために使用され、sys.argv[0] はコード自体のファイル パスを表します。たとえば、CMD コマンド ラインで「python test.py -help」と入力し、次に sys と入力します。 argv[0] 「test.py」の略です。

sys.startswith() は、オブジェクトが何で始まるかを判断するために使用されます。たとえば、Python コマンドラインで「'abc'.startswith('ab')」と入力すると、True が返されます。

次の例を参照してください。

#!/usr/local/bin/env python
import sys
def readfile(filename):
    '''Print a file to the standard output.'''
    f = file(filename)
    while True:
          line = f.readline()
          if len(line) == 0:
             break
          print line,
    f.close()
print "sys.argv[0]---------",sys.argv[0]                                    
print "sys.argv[1]---------",sys.argv[1]                                    
print "sys.argv[2]---------",sys.argv[2]
# Script starts from here
if len(sys.argv) < 2:
    print 'No action specified.'
    sys.exit()
if sys.argv[1].startswith('--'):
   option = sys.argv[1][2:]
   # fetch sys.argv[1] but without the first two characters
   if option == 'version':
      print 'Version 1.2'
   elif option == 'help':
      print '''"
           This program prints files to the standard output.
           Any number of files can be specified.
           Options include:
           --version : Prints the version number
           --help    : Display this help'''
   else:
       print 'Unknown option.'
       sys.exit()
else:
    for filename in sys.argv[1:]:
        readfile(filename)
执行结果:# python test.py --version help
sys.argv[0]--------- test.py
sys.argv[1]--------- --version
sys.argv[2]--------- help
Version 1.2
ログイン後にコピー
注: sys.argv[1][2:] は、3 番目の文字から最後まで、2 番目のパラメーターからインターセプトすることを意味します。この例の結果は次のようになります。

以上がsys.argv[]の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート