-1

optparse モジュールの存在を知りました。私は個人的に常に getopt を使用していたので、より良いものを探す気にはなりませんでした。ただし、optparse の方がはるかに高度であることは明らかなので、将来的にはコマンド ラインからオプションを取得する方法として優先されると考えています。

とにかく、この出来事は私に衝撃を与えました。標準ライブラリにはるかに優れた代替手段がある、最初から使用しているモジュールまたは関数があるかどうか疑問に思っています。「以前のソリューション:getopt。より良いソリューション:optparse(python 2.x以降)」の好みで、このようなコンパクトで閲覧しやすいリストはありますか?

合意された CW としてマークされた編集。

  • コマンド ライン オプションの解析: getopt、optparse、argparse
  • パッケージ管理: distutils、setuptools
4

4 に答える 4

2

これは、そのようなリストを開始するのに適した場所である可能性があることをお勧めします

optparse を argparse に置き換える pep389 があることに注意してください

collections.defaultdict使用するほとんどの場所でより適切に機能しますdict.setdefault

collections モジュールは、Python3 の新しい機能がたくさんあるので、慣れるには良いモジュールです。

リストを保持する必要がない場合、ジェネレーター式はリスト内包表記よりも優れていることがよくあります

すべての問題のb if a else c代わりに三項演算子a and b or c

multiprocessingあなたがそれを行っていた他の方法を置き換えます;)

itertools.izip_longest不均一なものを圧縮するときに回避策を使用する必要がなくなります

于 2009-12-07T02:31:23.823 に答える
1

厳密にはコンパクトではなく、標準ライブラリ (および標準 Python の他の部分) のみを参照しており、サードパーティのパッケージは参照していないため、「Python XX の新機能」はすべてあります。エッセイ。

それと Google 以外には、ランダムなブログなどを除いて、そのようなリストはないと思います。

于 2009-12-07T02:33:10.513 に答える
0

optparse「よりも優れている」という声明には絶対に同意しませんgetopt。あなたoptparseにぴったりだとしても、それは誰かがgetoptあまり好ましいとは思わないという意味ではありません。それらはさまざまな目的のために意図されています:getoptはるかに単純で、使用を開始するための理解が少なくて済みます (特に、他のソースからの getopt に精通している場合: シェル スクリプトなど) optparse。より強力で、より詳細です。ただし、1 つまたは 2 つのコマンド ライム パラメーターを取得する必要がある場合は、単純なifステートメントを使用することもできます。

要約すると、すべてのツールにはそれぞれの目的があり、状況によっては、その状況により適した別のツールが必要になる場合があります。

于 2009-12-07T02:32:38.097 に答える
0

私は Richard Gruet のPython クイック リファレンスを使用します。これは、標準ライブラリのより重要な部分を含む、Python に関するすべての優れたリファレンスです。色分けとメモを使用して、一般的な言語とライブラリに変更を加えるのに適しています。

たとえば、getopt に関する彼のセクションと、 base distribution のモジュールとパッケージのリストを見てください。

まだ Python 3 用に更新されていませんが、期待しています。

于 2009-12-07T03:08:02.093 に答える