並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 26 件 / 26件

新着順 人気順

argparseの検索結果1 - 26 件 / 26件

  • pythonで小さなツールを作る時のtips - Qiita

    自分で小さいツールを作る時に心に留めているtipsです. 書き始めたときは「どうせ書捨てだし」と思って書き始めると意外と長い間,もしくはいろんなところで使うことになったりするので,気をつけておくと後から楽になるというような小技です.大規模なソフトウェアの開発ではまた違った流儀があると思います. メインルーチンを関数にする 関数名はなんでもいいのですが,自分は趣味で main() という名前の関数を用意し,メインルーチンは全てそこに書くようにしています. #!/usr/bin/env python def main(): print('hello, hello, hello!') if __name__ == '__main__': main() pythonの小さなサンプルコードを見たりすると関数外の部分にベタで実行コードが書かれていたりします.もちろんそれでも動くのですが,以下の2点で後

      pythonで小さなツールを作る時のtips - Qiita
    • Pythonのコマンドライン引数処理の決定版 docopt (あとJuliaに移植したよ) - りんごがでている

      Pythonをよく使う人にはよく知ってる人も多いのですが、docoptという便利ライブラリがあります。 docoptはargparseやoptparseのようなコマンドライン引数をパースするライブラリなのですが、その発想がコロンブスの卵なのです。 例えばPython標準のargparseだと、argparseのAPIを組み合わせてパーサを組み立てるわけです。するとパーサと一緒にヘルプも作ってくれて、"program --help"などとすると自動生成されたヘルプを表示してくれるようになります。 しかし、そのAPIを覚えるのが大変で、毎回ドキュメントを読まないと忘れちゃうわけです。 import argparse parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument

        Pythonのコマンドライン引数処理の決定版 docopt (あとJuliaに移植したよ) - りんごがでている
      • [テンプレ付き]PythonでCLIツールを作るときのTips | DevelopersIO

        こんにちは、どんな作業もターミナルで行うことが多めの平野です。 最近はパイプに流すようなCLIアプリもPythonで作ることが多いので、 そこで必要になったいくつかの要素をまとめてみます。 パイプライン処理として実装しよう BrokenPipeの表示を消す argparseによる引数とオプションのパース この辺を考慮すれば、あとは文字列変換の主要なロジックだけを実装すればOKかと思います。 パイプライン処理として実装しよう パイプライン処理とだけ言うと色々な意味がありそうですが、ここで言っている意味は データの先頭行の処理の結果は最終行が入力される前でも取り出せるようにしよう ということです。 パイプ (コンピュータ)#シェルからの使用 - Wikipedia 複数行のテキストが入力されてきた時に、 それぞれの行の文字数をカウントするアプリケーションを作ったとします。 この時、以下のような

          [テンプレ付き]PythonでCLIツールを作るときのTips | DevelopersIO
        • argparseを使ってみた - そこはかとなく書くよ。

          追記: t2yさんが翻訳してくださいました。 argparseコマンドラインオプションと引数の解析 python 2.7からコマンドラインの引数を解釈するargparseモジュールが標準で入りました。 従来使われてきたoptparseは廃止されます。ただし、広く使われているところから他の廃止されるモジュールとは異なり消されることはなく、警告も標準では出ません。 optparseからargparseに移行する理由や廃止の進め方はPEP 389に記載されています。 以下にPEP 389の和訳を(訳に自信がない場所がありますが)行ないましたので参考にしてください。 http://www.tdoc.info/PEP-ja/389.html というわけで、ざっとargparseの使い方を勉強したのでここに公開します。間違ってたらご指摘ください。 なお、ちゃんとしたドキュメントは http://doc

            argparseを使ってみた - そこはかとなく書くよ。
          • 機械学習の煩雑なパラメーター管理の決定版 「Hydra」「MLflow」「Optuna」の組み合わせで手軽にはじめる一元管理

            Optuna™は、オープンソースのハイパーパラメーター自動最適化フレームワークです。 「Optuna Meetup #1」では、Optunaのユーザー、導入を検討している方、また開発者を中心に、Optunaの様々な活用方法が共有されました。中村氏は、Hydra・MLflow・Optunaを組み合わせたハイパーパラメーター管理について発表しました。 ふだんは音声合成と声質変換技術などの音声を用いる技術を研究 中村泰貴氏(以下、中村):「HydraとMLflowとOptunaの組み合わせで手軽に始めるハイパーパラメータ管理」というタイトルで、東京大学大学院情報理工学系研究科の修士課程2年の中村が発表します。 軽く自己紹介ですが、先ほど述べたように情報理工学系研究科の、猿渡・小山研究室の修士課程2年です。音声合成に関する技術をふだん研究しています。「Twitter」をやっているので、ぜひフォロー

              機械学習の煩雑なパラメーター管理の決定版 「Hydra」「MLflow」「Optuna」の組み合わせで手軽にはじめる一元管理
            • ArgumentParserの使い方を簡単にまとめた - Qiita

              はじめに Pythonの実行時にコマンドライン引数を取りたいときは,ArgumentParser (argparse)を使うと便利です。 様々な形式で引数を指定することができます。 初めてargparseを使おうとして調べていた時にいろいろな記事を読みましたが,細かいオプションまで解説している記事が多く,やりたいことの方法がすぐに分からなかった記憶があります。 そこで必要最低限な内容に絞り,読んですぐに使えるような記事を書きたいと思います。 ArgumentParserとは? プログラム実行時にコマンドラインで引数を受け取る処理を簡単に実装できる標準ライブラリです。 ArgumentParserを使うと

                ArgumentParserの使い方を簡単にまとめた - Qiita
              • argparse — Parser for command-line options, arguments and sub-commands

                argparse — Parser for command-line options, arguments and sub-commands¶ Source code: Lib/argparse.py The argparse module makes it easy to write user-friendly command-line interfaces. The program defines what arguments it requires, and argparse will figure out how to parse those out of sys.argv. The argparse module also automatically generates help and usage messages. The module will also issue err

                  argparse — Parser for command-line options, arguments and sub-commands
                • 15.4. argparse — Parser for command-line options, arguments and sub-commands — Python 2.7.18 documentation

                  Source code: Lib/argparse.py Tutorial This page contains the API reference information. For a more gentle introduction to Python command-line parsing, have a look at the argparse tutorial. The argparse module makes it easy to write user-friendly command-line interfaces. The program defines what arguments it requires, and argparse will figure out how to parse those out of sys.argv. The argparse mod

                  • Python argparseの使い方 - Qiita

                    追記しました。argparseのテストで気をつけるべきこと。 こちらに移転、更新しました。 スクリプトの引数仕様 とあるスクリプトの引数の仕様を下記のようにしたい。 srcディレクトリパスの指定は必須 dstディレクトリパスの指定は必須ではない 対象とするファイルの拡張子を複数指定したい debug用のprint文は普段はstdoutに出したくない といった仕様をargparseを使って実装し、--helpして表示した結果が下記。 次の章からこの実装方法を順を追ってメモしておく。 $ ./photosort.py --help usage: photosort.py [-h] [-d [PATH_ROOT_DST]] [-e SORT_FILES_EXTENTIONS [SORT_FILES_EXTENTIONS ...]] [--debug] path_root_src This scr

                      Python argparseの使い方 - Qiita
                    • 【Python入門】argparseでコマンドライン引数を使ってみよう! | 侍エンジニアブログ

                      について、解説します。より実用的なものが増えてきますが、頭のなかで整理しながら学習していきましょう。 choicesについて 引数には許される値を指定することができ、choicesの項目で指定します。 choicesの項目で指定した以外の値を指定すると、エラー「error: argument」が出力表示されます。それではサンプルコードを確認していきましょう。 import argparse # パーサーを作る parser = argparse.ArgumentParser( prog='argparseTest', # プログラム名 usage='Demonstration of argparser', # プログラムの利用方法 description='description', # 引数のヘルプの前に表示 epilog='end', # 引数のヘルプの後で表示 add_help=Tr

                        【Python入門】argparseでコマンドライン引数を使ってみよう! | 侍エンジニアブログ
                      • Argparse Tutorial

                        Argparse Tutorial¶ author: Tshepang Mbambo This tutorial is intended to be a gentle introduction to argparse, the recommended command-line parsing module in the Python standard library. Note There are two other modules that fulfill the same task, namely getopt (an equivalent for getopt() from the C language) and the deprecated optparse. Note also that argparse is based on optparse, and therefore v

                          Argparse Tutorial
                        • Pythonのargparseでブール値を扱うときは注意が必要 | note.nkmk.me

                          なお、本記事ではargparseモジュールにおけるブール値の取り扱いにフォーカスして説明する。argparseの基本的な使い方などは公式のチュートリアルを参照。 Argparse チュートリアル — Python 3.12.0 ドキュメント add_argument()のtypeで引数の型を指定 argparseで便利なのが、型の指定。 add_argument()の引数typeで型を指定できる。例えば、整数intを指定するとコマンドライン引数が自動でintに変換される。intに変換できない値に対してはエラーが発生する。 import argparse parser = argparse.ArgumentParser() parser.add_argument('arg_int', type=int) args = parser.parse_args() print(args.arg_in

                            Pythonのargparseでブール値を扱うときは注意が必要 | note.nkmk.me
                          • argparseでコマンドライン引数の解析

                            argparseは、コマンドラインプログラムの引数を解析するのに便利なモジュールで、C言語のgetopt的なものです。似たような機能をもつモジュールとしてgetoptモジュール(C言語のものと同等)、optparseモジュールがありますがそれらは古いモジュールで、argparseを使うのが推奨されてるようです。 基本的な使い方 import argparse p = argparse.ArgumentParser() p.add_argument("foo") # 位置引数fooを定義 args = p.parse_args() # デフォルトでsys.argvを解析 print(args.foo) このように作成したtest.pyファイルを、引数なしで実行してみます。 $ python test.py usage: test.py [-h] foo test.py: error: too

                              argparseでコマンドライン引数の解析
                            • [Python] argparseモジュールを使って、コマンドライン引数を本格的に扱う - YoheiM .NET

                              こんにちは、@yoheiMuneです。 以前に[Python] コマンドライン引数を扱うでsys.argvを使ったコマンドライン引数の扱い方を書きましたが、今回はargparseモジュールを使ってもっと本格的に扱う方法をブログに書きたいと思います。 目次 argparseモジュールを導入する argparseモジュールは最初から入っているモジュールなので、pipなどでのインストールは不要です。以下のインポートを行います。 import argparse これで利用できるようになりました。 早速一番簡単な例で使ってみましょう。argparseモジュールは以下のように利用します。 # argparser_sample.py # 引数パーサーの起動 parser = argparse.ArgumentParser() parser.parse_args() これでargparseが使えるようにな

                                [Python] argparseモジュールを使って、コマンドライン引数を本格的に扱う - YoheiM .NET
                              • optparseからargparseに変更。 — ペンギンと愉快な機械の日々

                                optparseからargparseに変更。 1 tonicdnscli のPython 3への対応をしようとした際、コマンドラインオプションに使用している optparseモジュールがPython 2.7 で廃止予定だということを知りました。そこで、optparseからargparseに変更することにしました。optparseでは、入力ファイルをJSON形式で表示させるためのオプションや、TonicDNSからレコードを取得して表示、レコードの登録、レコードの削除を行うのをオプションで行っていましたが、argparseに変更するタイミングで、これらをサブコマンドとして実装しなおしました。変更した結果が下記の表です。 機能 optparse argparse 変換・表示 -o/–stdout show 取得表示 -g/–retrieve get レコード登録 -c/–create creat

                                • argparseの使い方とoptparseとの違い - Qiita

                                  以前、OptParserの使い方として記事を書いたが、どうやらargparse.ArgumentParserの方がなういらしい なのでargparse.ArgumentParserの使い方のメモ # -*- coding:utf-8 -*- from optparse import OptionParser from argparse import ArgumentParser if __name__ == '__main__': """ コマンドエラー時に表示する文字列 """ desc = u'{0} [Args] [Options]\nDetailed options -h or --help'.format(__file__) # %progは出力できない # usage = u'%prog [Args] [Options]\nDetailed options -h or --he

                                    argparseの使い方とoptparseとの違い - Qiita
                                  • Pythonのargparseでサブコマンドを実現する - Qiita

                                    Python 3 で argparse を使ってサブコマンドをパースする方法を説明します。が、Python に詳しくないのでもっといい方法があるかもしれません。標準ライブラリだけで済ませたいけど、argparse は高機能過ぎて使いづらい… やりたいこと git コマンドのように git add や git commit を作る サブコマンドごとのヘルプを見る git help を作る サンプルコード ポイントとしては次の通りです。 parser.add_subparsers() で parser を入れ子にする parser_〇〇.set_defaults(handler=関数名) でサブコマンドごとの処理をハンドラ関数に移譲する 未知のサブコマンドが指定された場合はヘルプを表示する #!/usr/bin/env python # coding: utf-8 import argpars

                                      Pythonのargparseでサブコマンドを実現する - Qiita
                                    • argparse – コマンドラインオプションと引数の解析 - Python Module of the Week

                                      argparse モジュールは optparse に置き換わるものとして Python 2.7 で追加されました。 argparse の実装は optparse へ簡単に追加されない機能を提供しますが、後方互換性のない API の変更を必要とします。そのために optparse に置き換わる新たなライブラリとして設けられました。 optparse もそのままサポートされますが、新しい機能が実装されることはないと思われます。 optparse と比較する¶ argparse の API は optparse が提供するものとよく似ています。そして、多くのケースでは argparse はクラス名やメソッドを変更すると、そのまま置き換えて使用できます。そうとは言え、そのままでは使用できない互換性のない新機能も少しだけあります。 既存のプログラムをアップグレードするかどうかは、基本的にケースバイケ

                                      • ちょっとしたコマンドラインツールをpythonで作る時に便利なargparseの使い方

                                        logging myself - 要するにただの日記 - 物事をお金で解決する価値観を改めたいと考えるキッカケになった東日本大震災。 エネルギーを自分の手の内に取り戻したいと考えるようになった福島の原発事故。 それを契機に太陽光発電システムを自作し、無農薬無肥料菜園を借り、プチ自給自足を始めました。 東京都昭島市の賃貸アパート在住。嫁1人、娘2人、猫2匹の家族構成。 仕事はIT関係。 趣味はDIY、電子工作、Python、自家焙煎、家庭菜園、写真撮影。 Blog My Flickr Photos My Offgrid System Monitor Github RSS ちょっとしたコマンドラインツールを作るとき、欲しくなるのが以下のようなカッコイイオプション指定機能とヘルプ表示。 pythonなら、標準で使える argparseパッケージ を使って簡単に実装することができます。 こうして作

                                        • optparse のコールバック処理を argparse モジュールへ移行する - forest book

                                          Python のコマンドライン引数の解析ツールは getopt と optparse、さらに Python 2.7 から argparse が標準ライブラリとして追加されています。 Python 2.6 環境では argparse 使えないからと、私は argparse の使用を少し躊躇していたところがあったのですが、PEP389(和訳) によると、argparse は Python 2.3 以上で使えるようなので、optparse がなければ argparse 1.2.1 : Python Package Index からインストールすれば良いんだと気付きました。 最近、車輪の再発明をしている(?)記事 *1 を見つけたりと、今から開発するコマンドライン引数を受け取るプログラムには、もっと積極的に argparse を使おうよと呼びかけてみようと思った次第なんです。argparse の使

                                            optparse のコールバック処理を argparse モジュールへ移行する - forest book
                                          • Python の argparse モジュールを使う

                                            Python の引数処理モジュールである argparse を使ってみます。 そろそろ Python 3.3 で作業を始めるべきでしょうし、いつまでも Python 2.4 のことを考えていても窮屈なためです。 Python の標準ライブラリを使った引数処理には、次のような段階があると思います。 sys.argv を使った原始的な方法 getopt モジュールを使った Unix 系の伝統的な方法 optparse モジュールを使った Python 2.4 などもターゲットにした方法 argparse モジュールを使った最近の方法 Argparse Tutorial には次のように記載されています。 There’s two other modules that fulfill the same task, namely getopt (an equivalent for getopt() f

                                            • PEP 389: argparse - 新しいコマンドラインparseモジュール — PEP Japanese Translation v0.0.7 documentation

                                              モチベーション¶ argparseモジュールは既存のコマンドライン引数を解釈するモジュールであるgetopt[2]とoptparse[3]よりも高機能なparseライブラリです。argparseは、単なるオプションだけでなく固定引数(positional argument)、サブコマンド、必須オプション、”/f”や”+rgb”といったオプション文法、0以上や1以上という形式の引数、その他getoptとoptparseが持っていない多数の機能を提供します。 argparseモジュールはこれらのモジュールを置き換えるサードパーティ製のモジュールとしてすでに人気があります。argparseはIPython(Scipy PythonShell)[4]で使われており、Debianのtestingとusntable[5]に含まれており、2007年から標準ライブラリに組み込むようたくさんのリクエストを受

                                              • ちょっとしたコマンドラインツールをpythonで作る時に便利なargparseのテストで気をつけるべきこと。

                                                ちょっとしたコマンドラインツールをpythonで作る時に便利なargparseなんですが、位置引数ありparserが出す例外をテストするコードを書いて初めて知ったことがありました。 そのメモ書きになります。 位置引数とは argparseの公式ページにも載っている通り、コマンドライン実行時に必須となる引数のことです。以下引用。 位置引数は次のように作成します: >>> >>> parser.add_argument('bar') parse_args() が呼ばれたとき、オプション引数は接頭辞 - により識別され、それ以外の引数は位置引数として扱われます: >>> >>> parser = argparse.ArgumentParser(prog='PROG') >>> parser.add_argument('-f', '--foo') >>> parser.add_argument('

                                                  ちょっとしたコマンドラインツールをpythonで作る時に便利なargparseのテストで気をつけるべきこと。
                                                • pythonのargparseテンプレート - Qiita

                                                  python v2.7にはargparseという引数設定を簡単にするモジュールがあります。 これを使うと、pythonスクリプトが簡単にできるので、テンプレートを載せておきます。 # coding:utf-8 import argparse if __name__ == '__main__': parser = argparse.ArgumentParser(description='description') parser.add_argument('arg1', type=int, help='integer argument') parser.add_argument('arg2', type=str, help='string argument') # -aや--allが指定されれば True, なければ False が args.all に格納される parser.add_arg

                                                    pythonのargparseテンプレート - Qiita
                                                  • python tips

                                                    python-tips.py � \כU `�_כU #!/usr/bin/env python import datetime import argparse from tqdm import tqdm def log(*args): msg = ' '.join(map(str, [datetime.datetime.now(), '>'] + list(args))) print(msg) with open('log.txt', 'at') as fd: fd.write(msg + '\n') def main(): psr = argparse.ArgumentParser() args = psr.parse_args() print('hello!', args) if __name__ == '__main__': main()

                                                      python tips
                                                    • argparse – コマンドラインオプションと引数の解析 - Python Module of the Week

                                                      argparse モジュールは optparse に置き換わるものとして Python 2.7 で追加されました。 argparse の実装は optparse へ簡単に追加されない機能を提供しますが、後方互換性のない API の変更を必要とします。そのために optparse に置き換わる新たなライブラリとして設けられました。 optparse もそのままサポートされますが、新しい機能が実装されることはないと思われます。 optparse と比較する¶ argparse の API は optparse が提供するものとよく似ています。そして、多くのケースでは argparse はクラス名やメソッドを変更すると、そのまま置き換えて使用できます。そうとは言え、そのままでは使用できない互換性のない新機能も少しだけあります。 既存のプログラムをアップグレードするかどうかは、基本的にケースバイケ

                                                      1