[PYTHON] Comment utiliser OptParse

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from optparse import OptionParser
 
if __name__ == '__main__':
 
    """Chaîne de caractères à afficher lorsqu'une erreur de commande se produit"""
    usage = u'%prog [Args] [Options]\nDetailed options -h or --help'
 
    version = 0.1
    parser = OptionParser(usage=usage, version=version)
 
    """ test.py -Si vous souhaitez saisir une valeur entière après l'option, comme dans d 20111201"""
    parser.add_option(
        '-d', '--date',
        action = 'store',
        type = 'int',               #Spécifiez le type de valeur à recevoir
        dest = 'download_date',     #Enregistrer le nom de la variable de destination
        help = 'Set date(yyyymmdd) you want to download.(ex.20110811)'  # --La phrase à afficher au moment de l'aide (pouvez-vous la voir?)
    )
     
    """Si vous voulez une chaîne(test.py -f hoge.txt) """
    parser.add_option(
        '-f', '--file',
        action = 'store',
        type = 'str',           #Spécification de type
        dest = 'file_name',     #Enregistrer le nom de la variable de destination
        help = 'Set filename (ex. hoge.txt)'
    )
 
    """ -Enregistrer true si s est spécifié"""
    parser.add_option(
        '-s', '--sleep',
        action = 'store_true',      # store_Si vrai, alors vrai'dest'Il est stocké dans la variable spécifiée par.(stocker quand false_false)
        dest = 'hoge_flg',
        help = 'set sleep flag'
    )
 
    """Définissez la valeur par défaut pour chaque option"""
    parser.set_defaults(
        download_date = None,
        file_name = None,
        hoge_flg = False
    )
 
    """Options de perspective"""
    options, args = parser.parse_args()
 
    """Argument simple(Exemple: test.py a b)Est args[index]Peut être obtenu avec"""
    if len(args) > 0:
        for i, v in enumerate(args):
            print 'Args[%s] is: %s' % (i, v)
 
    """La valeur spécifiée dans l'option est options.<Nom de variable>Peut être obtenu avec"""
    date = options.download_date
    if date:
        if len(str(date)) != 8:
            #Lors de la génération d'une erreur ↓ Comme ça
            parser.error('Date must be yyyymmdd')
 
    print 'date: %s, file: %s, sleep: %s' % (options.download_date, options.file_name, options.hoge_flg)

Si vous exécutez ce fichier avec l'option –help

$ python test.py --help
 
Usage: test.py [Args] [Options]
Detailed options -h or --help
 
Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -d DOWNLOAD_DATE, --date=DOWNLOAD_DATE
                        Set date(yyyymmdd) you want to download.(ex.20110811)
  -f FILE_NAME, --file=FILE_NAME
                        Set filename (ex. hoge.txt)
  -s, --sleep           set sleep flag

Recommended Posts

Comment utiliser OptParse
Comment utiliser le module optparse
Comment utiliser xml.etree.ElementTree
Comment utiliser Python-shell
Remarques sur l'utilisation de tf.data
Comment utiliser virtualenv
Comment utiliser Seaboan
Comment utiliser la correspondance d'image
Comment utiliser Pandas 2
Comment utiliser Virtualenv
Comment utiliser pytest_report_header
Comment utiliser Bio.Phylo
Comment utiliser SymPy
Comment utiliser x-means
Comment utiliser WikiExtractor.py
Comment utiliser IPython
Comment utiliser virtualenv
Comment utiliser Matplotlib
Comment utiliser iptables
Comment utiliser numpy
Comment utiliser TokyoTechFes2015
Comment utiliser venv
Comment utiliser le dictionnaire {}
Comment utiliser Pyenv
Comment utiliser python-kabusapi
Comment utiliser le retour
Comment utiliser pyenv-virtualenv
Comment utiliser imutils
Comment utiliser Qt Designer
Comment utiliser la recherche triée
[gensim] Comment utiliser Doc2Vec
python3: Comment utiliser la bouteille (2)
Comprendre comment utiliser django-filter
[Python] Comment utiliser la liste 1
Comment utiliser FastAPI ③ OpenAPI
Comment utiliser IPython Notebook
Comment utiliser Pandas Rolling
[Note] Comment utiliser virtualenv
Python: comment utiliser pydub
[Python] Comment utiliser checkio
Comment faire fonctionner GeoIp2 de Django
[Python] Comment utiliser input ()
Comment utiliser le décorateur
[Introduction] Comment utiliser open3d
Comment utiliser Python lambda
Comment utiliser Jupyter Notebook
[Python] Comment utiliser virtualenv
python3: Comment utiliser la bouteille (3)
python3: Comment utiliser la bouteille
Comment utiliser Google Colaboratory
Comment utiliser les octets Python
Comment utiliser argparse et la différence entre optparse
Comment utiliser cron (mémo personnel)
Python: comment utiliser async avec
Comment utiliser la fonction zip
Comment utiliser SWIG de WAF
Résumé de l'utilisation de pandas.DataFrame.loc
Comment utiliser les classes dans Theano