Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. PythonのxdrlibモジュールでXDRデータをエンコード・デコードする方法

    xdrlibモジュールは、外部データ表現(XDR:External Data Representation)のためのエンコーダー(Packer)とデコーダー(Unpacker)を提供するPythonの標準ライブラリです。XDRは、異なるシステムや外部ソース間でデータをやり取りする際に広く使われる標準フォーマットで、複雑なデータ構造を作成・転送するのに役立ちます。OSI参照モデルにおけるプレゼンテーション層に関連するサービスを提供するものとして知られています。この記事では、xdrlibモジュールを使ってデータをパック(エンコード)およびアンパック(デコード)する方法を、具体的なサンプルコードとと

  2. Pythonの出力フォーマットまとめ|format()・%演算子・文字列整列の使い方

    Pythonでデータ処理の結果を出力する際、見やすい形式に整えたり、数学的な精度を指定して表示したりしたいことがあります。本記事では、Pythonで結果を出力するためのさまざまな方法を、具体例とともにわかりやすく解説します。 format()関数を使う方法 この方法では、Pythonの組み込み関数であるformat()を使用します。波括弧 {} は値のプレースホルダー(置き場所)として機能し、format()関数に渡された値が順番に埋められていきます。デフォルトでは引数の順序どおりに埋められますが、インデックス0から始まる位置指定を行うことで、値の表示順序を自由に制御することも可能です。

  3. PythonでSelenium WebDriverをプロキシ経由で実行する方法

    PythonのSelenium WebDriverでは、プロキシを設定した状態でブラウザを操作することができます。プロキシは、ローカライズ(地域対応)テストを行ううえで欠かせない要素です。たとえばECサイトのテストでは、ユーザーの所在地に応じて表示される言語や通貨が正しいかどうかを確認できます。テスト内でプロキシを活用することで、ウェブサイトのUI(ユーザーインターフェース)がアクセス元の地域と一致しているかを検証することも可能です。Seleniumでプロキシを設定するには、以下の手順に従います。Seleniumパッケージからwebdriverをインポートするプロキシサーバーのアドレスを定義す

  4. Pythonの名前空間とスコープの仕組みをわかりやすく解説

    Pythonでは、変数・関数・ライブラリ・モジュールなど、さまざまな「名前」を扱います。ところが、使おうとした変数名が、すでに別の変数や関数、メソッドの名前として存在している――そんな場面に遭遇することは珍しくありません。このような名前の衝突を避けるためにも、Pythonがこれらの名前をどのように管理しているのかを理解しておく必要があります。その鍵となるのが「名前空間(namespace)」という概念です。 名前空間の3つの種類 Pythonの名前空間は、大きく次の3つに分類されます。 ローカル名前空間(Local Namespace)関数の中で定義された変数や関数の名前を保持する名前空

  5. Pythonのnetrcモジュールで.netrcファイルを扱う方法

    Python標準ライブラリのnetrcクラスは、Unix系システムのユーザーのホームディレクトリに存在する.netrcファイルからデータを読み取るために使用されます。.netrcは隠しファイルであり、FTPやcurlなどのツールが利用するログイン資格情報(ユーザー名やパスワードなど)が保存されています。これらのツールは、認証情報を手動で入力しなくても、このファイルを読み込んで自動的に処理を実行できるようになっています。Pythonのnetrcモジュールを使えば、このファイルの内容を簡単にプログラムから取得できます。以下のサンプルコードでは、netrcモジュールを使用して.netrcファイルを読

  6. Pythonからcx_Oracleを使ってOracleデータベースに接続する方法

    Pythonは「cx_Oracle」というパッケージを使用することで、Oracleデータベースに接続できます。Oracleは世界的に広く利用されている代表的なデータベースの一つであり、Pythonの優れたデータ処理機能と組み合わせることで、その真価を発揮します。本記事では、PythonからOracleデータベースへ接続し、SQLクエリを実行する方法を解説します。 cx_Oracleのインストール まず、Oracleとの接続を確立するために必要なPythonパッケージをインストールします。以下のコマンドを実行してください。 実行例 pip install cx_Oracle Oracleデータベ

  7. Pythonのos.pathモジュール徹底解説!パス操作の基本をわかりやすく学ぼう

    Pythonのos.pathモジュールは、システム上のさまざまな場所にあるファイルを扱う際に非常に便利な、広く利用されているモジュールです。パス名の結合、正規化、取得など、さまざまな目的で使用できます。このモジュールが提供する関数は、引数としてbytes型またはstr型のいずれか一方のみを受け付けます。また、実行結果はプログラムを実行しているOS(オペレーティングシステム)に依存することにも注意が必要です。os.path.basename – パスの最後の部分を取得するこの関数は、パスの最後の部分(フォルダ名またはファイル名)を返します。Windowsではバックスラッシュ(\)、Linuxなど

  8. Pythonのポリモーフィズム(多態性)とは?演算子・組み込み関数・メソッドでの実例付き解説

    ポリモーフィズム(多態性)とは「複数の形を持つこと」を意味するオブジェクト指向プログラミングの重要な概念です。Pythonでは、同じ演算子や関数が入力に応じて異なる振る舞いをする様子を、至るところで見ることができます。また、異なるクラスに同名のメソッドを持たせることで、コードの再利用性が高まり、プログラム全体の複雑さを抑えることができます。さらに、ポリモーフィズムは継承とも密接な関係があります。この記事では、具体的なコード例を通じて、Pythonにおけるポリモーフィズムの基本をわかりやすく解説します。演算子におけるポリモーフィズム「+」演算子は、2つの入力を受け取り、その種類に応じて異なる結果

  9. PythonのPygorithmモジュールとは?アルゴリズム学習と実用例を解説

    Pygorithmモジュールは、さまざまなアルゴリズムの実装を収録した教育用モジュールです。このモジュールの最大の魅力は、Pythonで実装されたアルゴリズムのソースコードを簡単に参照できる点にあります。さらに、実際のプログラミングにおいて、与えられたデータセットに対して各種アルゴリズムを適用することも可能です。本記事では、Pygorithmモジュールの基本的な使い方として、データ構造の一覧表示、アルゴリズムコードの取得、そしてソートの適用方法について解説します。データ構造の一覧を確認するPython環境にモジュールをインストールした後、パッケージに含まれるさまざまなデータ構造を確認できます。

  10. Pythonで要素がリスト内に少なくともN回出現するかどうかを確認する方法

    リストを使ったデータ分析では、特定の要素がリスト内に少なくともN回出現しているかどうかを調べたい場面がよくあります。たとえば「数値5がリスト内に3回以上含まれているか」を判定するようなケースです。本記事では、この要件を実現するための2つのアプローチを解説します。方法1:出現回数をカウントして判定するまず紹介するのは、ループ処理で出現回数を直接カウントするシンプルな方法です。対象の要素と必要な出現回数を変数として定義し、リストを順番に走査しながら一致する要素の数を数えていきます。カウント値が必要な回数(N)以上に達したら結果はTrueとなり、達しなければFalseとなります。サンプルコードlis

  11. Pythonで共通キーの値を合計しながら2つの辞書を結合する方法

    Pythonでデータ分析を行っていると、2つの辞書を結合する際に、同じキーを持つ要素の値を合計したいという場面に遭遇することがあります。本記事では、共通キーの値を加算しながら辞書を結合する2つの方法を、サンプルコード付きでわかりやすく解説します。方法1: forループと「|」演算子を使うまず基本的な方法として、forループで片方の辞書の各キーがもう片方の辞書にも存在するかを確認し、存在すれば値を加算します。その後、Python 3.9以降で利用可能な辞書の「|」(ユニオン)演算子を使って、2つの辞書を1つにマージします。サンプルコードdictA = {Mon: 23, Tue: 11, Sun

  12. Pythonでフラットな辞書をネストされた辞書に変換する方法

    Pythonの辞書(dict)は、キーと値のペアで構成されるデータ構造です。複数の辞書を1つのネストされた辞書(入れ子構造の辞書)にまとめたい場合、いくつかの方法があります。ここでは、元となる辞書と、ネスト後の辞書で使用する新しいキーを組み合わせて変換を行う2つのアプローチを紹介します。方法1:キーを直接代入するこの方法では、まず新しい空の辞書を作成し、その各キーに対して既存の辞書を代入していきます。結果として、指定したキーを持つネストされた辞書が完成します。シンプルで直感的な方法です。サンプルコードdictA = {Sun: 1, Mon: 2} dictB = {Tue: 3, Sun:

  13. Pythonでネストしたリストをツリー構造の辞書(dict)に変換する方法

    Pythonでは、ネストされたリスト(リストの中にリストが入ったデータ)を、木構造(ツリー構造)として扱える辞書に変換したいケースがあります。例えば、階層的なカテゴリやパス情報を表現する際に便利です。本記事では、ネストしたリストをツリー状の辞書へ変換するための2つのアプローチを、具体的なコード例とともに解説します。方法1:スライスを使った変換まず紹介するのは、スライスを活用するシンプルな方法です。各サブリストの要素を [::-1] によるスライスで逆順に走査し、キーがまだ存在しない場合は空の辞書を作成して追加していきます。これにより、リストの末尾から順に親子関係が組み立てられ、最終的にツリー構

  14. Pythonで1次元リストを可変長の2次元リストに変換する方法

    Pythonのリストは通常、要素が一列に並んだ1次元(1D)リストです。一方、2次元(2D)リストは、外側のリストの中にさらにリストがネストした構造を持ちます。本記事では、与えられた1次元リストから2次元リストを作成する方法を解説します。あわせて、2次元リスト内の各サブリストの長さ(要素数)をプログラム側で指定して渡す方法も紹介します。 appendとインデックスを使う方法 このアプローチでは、forループで2次元リストに必要な各長さを順番に処理し、その値をもとに元のリストをスライスして新しいリストへ追加していきます。インデックスは0から開始し、取り出した要素数を加算しながら増やすことで、元の

  15. Pythonで2つのリストを結合する方法|最初のリストの重複を保持しながらマージする

    Pythonを使ったデータ分析では、2つのリストを1つにまとめたい場面によく出会います。しかし、それぞれのリストに含まれる重複要素をどう扱うかは悩みどころです。本記事では、最初のリストの要素はそのまま(重複も含めて)保持しつつ、2番目のリストからはまだ存在しない要素だけを追加する方法を2通り紹介します。 方法1:extend() を使う まず最初のリストをコピーして結果用のリストを作成します。続いて、2番目のリストの各要素について「結果リストに存在しないか」を判定し、存在しない要素だけを extend() で追加していきます。この方法では、元のリストの順序がそのまま保たれるのが特徴です。 コー

  16. Python Kivyでウィンドウにラベルを追加する方法

    Kivyは、マルチタッチアプリのような革新的なユーザーインターフェースを持つアプリケーションを迅速に開発するためのオープンソースのPythonライブラリです。Androidアプリはもちろん、デスクトップアプリケーションの開発にも幅広く活用されています。本記事では、Kivyで作成したウィンドウにラベルを追加する方法を、サンプルコードとともにわかりやすく解説します。 ラベルの作成 以下の例では、kivy.uix.labelモジュールで提供されているLabel関数を使用して、ウィンドウにカスタムラベルを表示しています。このコードでアプリを実行すると、指定したテキストが表示された新しいウィンドウが立

  17. Pythonで点が長方形の内部にあるかどうかを判定する方法

    長方形は、左下の頂点(bottom-left)と右上の頂点(top-right)という2つの座標点で表すことができます。本記事では、与えられた点 (x, y) がその長方形の内部に存在するかどうかをPythonで判定する方法を解説します。例えば、左下の頂点が (1, 1)、右上の頂点が (8, 5) である長方形に対して、点 (5, 4) が含まれるかどうかを調べると、出力は True になります。解決のための手順solve() 関数を定義します。引数として bl(左下の頂点)、tr(右上の頂点)、p(判定対象の点)を受け取ります。点 p の x 座標が bl の x 座標より大きく、かつ t

  18. Pythonで素数を2つの素数の和として表現できるか判定する方法

    素数 n が与えられたとき、それを2つの素数 x と y の和(n = x + y)として表現できるかどうかを判定する問題です。例えば、n = 19 の場合、19 = 17 + 2 と表現できるため、出力は True になります。アルゴリズムの考え方この問題には重要な数学的な性質があります。n が奇数の素数である場合、その和が奇数になる2つの素数の組み合わせでは、必ず片方が偶数になります。偶数の素数は 2 だけ なので、結局「n − 2 が素数かどうか」を確認すればよいことになります。解決の手順素数判定用の関数 isPrime() を定義しますnumber が 1 以下の場合は False を

  19. Pythonでクイーンがチェス盤上の特定のマスを攻撃できるか判定する方法

    チェス盤上に、クイーンと相手の駒の位置を表す2つの座標があるとします。それぞれ Q(クイーン)と O(相手の駒)とします。ここで、クイーンが相手の駒を攻撃できるかどうかを判定する必要があります。ご存知のとおり、クイーンは同じ行、同じ列、そして斜め方向に攻撃することができます。 例えば、入力が Q = (1, 1)、O = (4, 4) の場合、出力は True になります。これは、Q が斜め方向に (4, 4) へ移動して攻撃できるためです。 解法のアプローチ この問題を解くには、以下の手順に従います。 Q の x 座標と O の x 座標が同じ場合は True を返す(同じ行) Q の

  20. Pythonでスタックを使ってキューを別のキューに昇順ソートできるか判定する方法

    最初のn個の自然数(未ソート)が格納されたキューがあるとします。スタックを1つ使用して、与えられたキューの要素を別のキューへ非減少順(昇順)に並べ替えることができるかどうかを判定する問題です。この問題を解くために使用できる操作は次のとおりです。スタックへの要素のプッシュ(push)またはポップ(pop)元のキューから要素を削除する別のキューへ要素を挿入する動作例たとえば、入力が Que = [6, 1, 2, 3, 4, 5] の場合、出力は True になります。手順は以下のとおりです。Queから先頭の「6」を取り出し、スタックにプッシュします。残りの要素「1, 2, 3, 4, 5」をQu

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:206/450  20-コンピューター/Page Goto:1 200 201 202 203 204 205 206 207 208 209 210 211 212