Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. コマンドラインオプション用のPythonパーサー

    コマンドラインから実行するときに、Pythonスクリプトに引数を渡す必要があることがよくあります。ただし、必要なパラメーターが同じ数、タイプ、または順序で提供されていない場合、スクリプトは例外を発生させます。ここで、コマンドライン引数を適切に解析する必要があります。 argparse モジュールは、非常に使いやすいコマンドラインインターフェイスを作成するためのツールを提供します。 sys.argvリストに収集された引数を解析する方法を処理し、ヘルプを自動的に生成し、無効なオプションが指定された場合にエラーメッセージを発行します。 コマンドラインインターフェイスを設計するための最初のステ

  2. Pythonでの10進固定小数点および浮動小数点演算

    浮動小数点数は、基数2の2進数としてメモリに表されます。その結果、浮動小数点の算術演算がおかしくなることがあります。 0.1と0.2を加算すると、次のような厄介な結果が生じる可能性があります- >>> 0.1 + 0.2 0.30000000000000004 実際、これはバイナリ浮動小数点表現の性質です。これは、どのプログラミング言語でも一般的です。 Pythonは、高速で正しく丸められた浮動小数点演算を実行するための10進モジュールを提供します。 10進モジュールは、浮動小数点を希望どおりに表現するように設計されており、算術演算の結果は期待どおりです。表現と操作の精度

  3. 効率的なループのためのイテレータを作成するPython関数

    ほとんどのプログラミング言語と同様に、Pythonはwhileステートメントとforステートメントを提供してループ構造を形成します。 forステートメントは、リスト、タプル、文字列などの反復可能オブジェクトをトラバースする場合に特に役立ちます。より効率的で高速な反復ツールは、Pythonの標準ライブラリのitertoolsモジュールで定義されています。これらのイテレータビルディングブロックは、HaskellやSMLなどの関数型プログラミング言語での同様のツールのPythonic実装です。 itertoolsモジュールの関数には3つのタイプがあります。 無限イテレータ 有限イテレータ 組み合

  4. 内部Pythonオブジェクトのシリアル化(マーシャル)

    Pythonの標準ライブラリのmarshalモジュールはオブジェクトのシリアル化機能(pickleモジュールと同様)を提供しますが、汎用データの永続化やソケットなどを介したPythonオブジェクトの送信にはあまり役立ちません。このモジュールは主にPython自体が読み取り/をサポートするために使用します。コンパイルされたバージョンのPythonモジュール(.pycファイル)に対する書き込み操作。マーシャルモジュールで使用されるデータ形式は、Pythonバージョン間で互換性がありません(サブバージョンでさえも互換性がありません)。そのため、あるバージョンのコンパイル済みPythonスクリプト(.

  5. 関数としてのPython標準演算子

    プログラミングでは、演算子は通常、加算、減算、比較などの特定の操作を実行するために事前定義された記号(キー)です。Pythonには、さまざまな方法で分割された多数の組み込み操作があります。算術、比較、ビット単位、メンバーシップなどのカテゴリ Pythonライブラリの演算子モジュールは、組み込みの演算子に対応する関数で構成されています。関数の名前は、対応する演算子のタイプに類似しています。たとえば、演算子モジュールのadd()関数は+演算子に対応します。 PythonのObjectクラスには、演算子シンボルに対応するdunder(名前の前後に二重アンダースコア)メソッドがあります。これらのd

  6. Pythonオブジェクトのシリアル化(Pickle)

    オブジェクトのシリアル化という用語は、オブジェクトの状態をバイトストリームに変換するプロセスを指します。作成されると、このバイトストリームはさらにファイルに保存したり、ソケットなどを介して送信したりできます。一方、バイトストリームからオブジェクトを再構築することは、逆シリアル化と呼ばれます。 Pythonのシリアル化と逆シリアル化の用語は、それぞれピクルスとアンピクルスです。 Pythonの標準ライブラリで利用可能なpickleモジュールは、シリアル化(dump()とdumps())および逆シリアル化(load()とloads())の関数を提供します。 pickleモジュールは、Pytho

  7. pprintモジュール(データプリティプリンター)

    pprintモジュール(lib / pprint.py)は、Pythonの標準ライブラリの一部であり、標準のPythonディストリビューションとともに配布されます。 pprintという名前は、かわいいプリンターの略です。 pprintモジュールの機能により、Pythonデータ構造の見栄えが良くなります。 Pythonインタープリターで正しく解析できるデータ構造はすべてエレガントにフォーマットされています。フォーマットされた式は可能な限り1行に保持されますが、長さがフォーマットの幅パラメーターを超えると、複数の行に分割されます。 pprint出力のユニークな機能の1つは、表示表現がフォーマットさ

  8. Pythonで疑似乱数を生成する

    多くのコンピュータアプリケーションでは、乱数を生成する必要があります。ただし、それらのいずれも真に乱数を生成しません。 Pythonは、他のプログラミング手法と同様に、疑似ランダムジェネレーターを使用します。 Pythonのランダム生成は、53ビットの精度のフロートを生成するメルセンヌツイスターアルゴリズムに基づいています。この手法は高速でスレッドセーフですが、暗号化の目的には適していません。 Pythonの標準ライブラリには、ランダム化を処理するためのさまざまな関数を定義するランダムモジュールが含まれています。 random.seed() −この関数は、乱数ジェネレーターを初期化します

  9. インタラクティブなPythonの例をテストする(doctest)

    Pythonの標準ディストリビューションには「doctest」モジュールが含まれています。このモジュールの機能により、インタラクティブなPythonセッションのように見えるテキストを検索し、これらのセッションを実行して、表示されているとおりに機能するかどうかを確認できます。これらの例は、クラス、モジュール、または関数のdocstring式から抽出されています。 Doctestは、付随するテキストファイルのテキストファイルから実行することもできます。 Pythonでは、「docstring」は、クラス、関数、またはモジュールの最初の式として表示される文字列リテラルです。スイートの実行時には無視

  10. Pythonプログラム終了ハンドラー(atexit)

    Pythonの標準ディストリビューションのatexitモジュールには、register()とunregister()の2つの関数があります。どちらの関数も、既存の関数を引数として取ります。登録された機能は、インタプリタセッションが正常に終了すると自動的に実行されます。 複数の機能が登録されている場合、それらの実行は登録の逆の順序になります。つまり、関数f1()、f2()、f3()が次々に登録され、実行順序はf3()、f2()、f1()になります。 unregister()関数は、自動的に呼び出される関数のリストから指定された関数を削除します。 次のコードは、コードの終了時に関数が自動実行

  11. 小さなPythonコードスニペットの実行時間を測定する(timeit)

    Pythonの標準ライブラリのtimeitモジュールのTimerクラスおよびその他の便利な関数は、Pythonコードの小さなビットが実行するのにかかる時間を測定するメカニズムを提供するように設計されています。モジュールにはコマンドラインインターフェイスがあり、関数はプログラム内からも呼び出すことができます。 実行時間を測定する最も簡単な方法は、次の便利な機能を使用することです timeit() この関数は、Timerクラスのオブジェクトを返します。主に2つのパラメータが必要です。 stmt −実行時間が測定される有効なPythonステートメントを含む文字列。 セットアップ

  12. Pythonデバッガー(pdb)

    ソフトウェア開発の専門用語では、「デバッグ」という用語は、プログラム内のエラーを見つけて修正するプロセスに広く使用されています。 Pythonの標準ライブラリには、Pythonプログラムをデバッグするためのユーティリティのセットであるpdbモジュールが含まれています。 デバッグ機能はPdbクラスで定義されています。このモジュールは、内部でbdbモジュールとcmdモジュールを使用します。 pdbモジュールには、非常に便利なコマンドラインインターフェイスがあります。これは、Pythonスクリプトの実行時に–m switchを使用してインポートされます。 python –m pdb

  13. with-statementコンテキスト用のPythonユーティリティ(contextlib)

    Pythonの標準ライブラリのcontextlibモジュールは、オブジェクトがプログラム内のリソースを適切に管理するContextManagerクラスを定義します。 Pythonには、コンテキストマネージャーで機能するwithキーワードがあります。ファイルオブジェクト(組み込みのopen()関数によって返される)は、ContextManagerAPIをサポートします。そのため、ファイルの操作中に使用されるキーワードをよく使用します。 次のコードブロックはファイルを開き、そこにいくつかのデータを書き込みます。操作が終了すると、ファイルが閉じられ、どのファイル記述子がリークしてファイルが破損する

  14. Pythonのトップレベルスクリプト環境(__main__)

    モジュールオブジェクトは、さまざまな属性によって特徴付けられます。属性名には、二重下線__が接頭辞と後置で付けられます。モジュールの最も重要な属性は__name__です。 Pythonがトップレベルの実行可能コードとして実行されている場合、つまり、標準入力、スクリプト、またはインタラクティブプロンプトから読み取られる場合、__name__属性は __ main __に設定されます。 。 >>> __name__ '__main__' スクリプト内からも、__name__属性の値が「__main__」に設定されていることがわかります。次のスクリプトを実行します

  15. Pythonの組み込みオブジェクト(builtins)

    組み込みモジュールは、Pythonインタープリターが起動するたびに、トップレベルの実行環境または対話型セッションとして自動的にロードされます。たまたますべてのPythonオブジェクトの基本クラスであるObjectクラスは、このモジュールで定義されています。このモジュールでは、数値、文字列、リストなどのすべての組み込みデータ型クラスが定義されています。 BaseExceptionクラス、およびすべての組み込み例外もこのクラスで定義されています。さらに、すべての組み込み関数も組み込みモジュールで定義されています。 このモジュールは現在のセッションに自動的にインポートされるため、通常は明示的にイン

  16. Unix / Linuxパスワードデータベース(pwd)へのアクセス

    Pythonの標準ライブラリのpwdモジュールは、Unix/Linuxオペレーティングシステムのユーザーアカウントのパスワードデータベースへのアクセスを提供します。このパスワードデータベースのエントリは、タプルのようなオブジェクトとして処理されます。タプルの構造は、CPythonAPIの次のpasswd構造pwd.hファイルに準拠しています インデックス 属性 意味 0 pw_name ログイン名 1 pw_passwd オプションの暗号化されたパスワード 2 pw_uid 数値ユーザーID 3 pw_gid 数値グループID 4

  17. Pythonバイトコードの逆アセンブラ

    Python標準ライブラリのdisモジュールは、Pythonバイトコードを人間が読める形式に分解することにより、Pythonバイトコードの分析に役立つさまざまな関数を提供します。これは、最適化の実行に役立ちます。バイトコードは、インタプリタのバージョン固有の実装の詳細です。 dis()関数 関数dis()は、Pythonコードソース、つまりモジュール、クラス、メソッド、関数、またはコードオブジェクトの分解された表現を生成します。 >>> def hello(): print ("hello world") >>> import dis

  18. Pythonが他の言語より遅いのはなぜですか?

    Pythonはスクリプト言語であり、Cはプログラミング言語です。 C / C ++はPythonに比べて比較的高速です。これは、Pythonスクリプトを実行すると、そのインタープリターがスクリプトを1行ずつ解釈して出力を生成するためですが、Cでは、コンパイラーが最初にスクリプトをコンパイルして、以下に関して最適化された出力を生成します。ハードウェア。 Javaや.NETなどの他の言語の場合、JITコンパイラは実行時にバイトコードをネイティブコードにコンパイルするため、Javaバイトコードと.NETバイトコードはそれぞれPythonよりも高速に実行されます。 Pythonの動的な性質によりJIT

  19. PythonのSMTPプロトコルクライアント(smtplib)

    Pythonの標準ライブラリには、Pythonプログラムを介してメールを送信するために使用できるSMTPクライアントセッションオブジェクトを定義する「smtplib」モジュールがあります。 メールサーバーは、インターネットを介して電子メールを処理および配信するアプリケーションです。送信メールサーバーは、電子メール送信のインターネット標準であるSMTP(Simple MailTransfer Protocol)サーバーを実装します。 受信メールサーバーには、主に2つの種類があります。 POP3、またはポストオフィスプロトコルとIMAP、またはインターネットメッセージアクセスプロトコル。 s

  20. PythonのElementTreeXMLAPI

    Extensible Markup Language(XML)は、HTMLによく似たマークアップ言語です。ポータブルであり、SQLデータベースを使用せずに少量から中量のデータを処理するのに役立ちます。 Pythonの標準ライブラリにはxmlパッケージが含まれています。このパッケージにはElementTreeモジュールが含まれています。これはシンプルで軽量なXMLプロセッサAPIです。 XMLは、階層データ形式のようなツリーです。このモジュールの「ElementTree」は、XMLドキュメント全体をツリーとして扱います。 Elementクラスは、このツリーの単一ノードを表します。 XMLファ

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:83/450  20-コンピューター/Page Goto:1 77 78 79 80 81 82 83 84 85 86 87 88 89