Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. PythonのdbmパッケージでUNIXデータベースを操作する方法

    dbmパッケージとは Pythonの標準ライブラリに含まれるdbmパッケージは、DBM形式のデータベースに対して辞書(dict)のようなインターフェースを提供します。dbmライブラリはKen Thompsonによって開発されたシンプルなデータベースエンジンで、DBMは「DataBase Manager」の略称です。UNIXオペレーティングシステムで広く使われており、固定サイズのバケットに単一のキー(主キー)を用いて任意のデータを格納し、ハッシュ技術によってキーからの高速なデータ検索を実現しています。 dbmパッケージの主なモジュール dbm.ndbm dbm.ndbmモジュールは、UNIX

  2. Pythonのhashlibモジュールでハッシュとメッセージダイジェストを安全に扱う方法

    Federal Information Processing Standard(FIPS:連邦情報処理標準)では、SHA1、SHA224、SHA256、SHA384、SHA512といった安全なハッシュアルゴリズムが定義されています。また、開発者であるRivest、Shamir、Adlemanの3人の姓の頭文字から名付けられたRSAでは、MD5アルゴリズムが定義されています。これらの初期のアルゴリズムは「メッセージダイジェスト」と呼ばれていましたが、現在では「セキュアハッシュ」という用語が主流になっています。 Pythonのhashlibモジュールは、以下のアルゴリズムを実装するために使用されま

  3. Pythonのコンテキスト変数(ContextVar)の使い方を徹底解説

    コンテキスト変数とは コンテキスト変数(Context Variable)は、その変数が属する「コンテキスト」に応じて異なる値を持つことができる特殊な変数です。スレッドローカルストレージ(Thread-Local Storage)では実行スレッドごとに変数が異なる値を持ちますが、コンテキスト変数の場合は、1つの実行スレッドの中に複数のコンテキストが存在しえます。この特性により、並行して実行される非同期タスクにおいて変数を管理・追跡する際に非常に有用です。 ContextVarクラスによる宣言 コンテキスト変数の宣言や操作には、contextvarsモジュールのContextVarクラスを使用

  4. Pythonのbase64モジュールを使ったデータエンコード・デコード入門

    PythonにおけるBase64エンコーディングとはPython標準ライブラリのbase64モジュールは、バイナリデータをプレーンテキスト(ASCII)プロトコルで安全に送信できる形式へ変換するための機能を提供します。メール送信、URLへの埋め込み、HTTP POSTリクエストなど、テキストベースの通信経路でバイナリデータを扱いたい場面で活躍するモジュールです。このモジュールが実装しているのは、RFC 3548で定義されたBase16、Base32、Base64の各アルゴリズム、および事実上の標準となっているAscii85とBase85のエンコーディングです。RFC 3548準拠のエンコーディ

  5. 【Python】binhexモジュールでbinhex4ファイルをエンコード・デコードする方法

    Pythonのbinhexモジュールとは binhexモジュールは、ファイルをbinhex4形式でエンコード・デコードするためのPython標準ライブラリです。binhex4形式は、MacintoshのファイルをASCIIテキストとして表現するために用いられた形式で、バイナリデータをテキストベースで安全に扱えるようにしたものです。なお、このモジュールが処理できるのはデータフォークのみで、リソースフォークは対象外となっています。 binhexモジュールの主な関数 binhexモジュールには、以下の2つの関数が定義されています。 binhex.binhex(input, output) inp

  6. PythonのbinasciiモジュールでバイナリとASCIIを相互変換する方法

    Pythonのbinasciiモジュールは、バイナリデータと各種ASCIIエンコード形式のバイナリ表現との間で相互変換を行うためのモジュールです。内部には高速化のためにC言語で実装された低レベル関数が含まれており、uu、base64、binhexといった高レベルモジュールの基盤としても利用されています。binasciiモジュールの主な関数一覧binasciiモジュールで定義されている関数は、命名規則に従って「a2b_*」(ASCII to Binary:ASCIIからバイナリへ)または「b2a_*」(Binary to ASCII:バイナリからASCIIへ)という名前が付けられています。uue

  7. Pythonの予約語(キーワード)一覧とkeywordモジュールの使い方

    Pythonのキーワード(予約語)とは Pythonには、言語仕様上特別な意味を持つ「キーワード(予約語)」が定義されています。これらの名前は変数名や関数名などの識別子として使用できません。標準ライブラリに含まれるkeywordモジュールを利用すると、ある文字列がキーワードかどうかをプログラムから簡単に判定できます。 keywordモジュールの主な機能 keyword.iskeyword(s) 引数に渡した文字列 s がPythonのキーワードであれば True を、そうでなければ False を返します。 keyword.kwlist 現在のインタプリタで定義されているすべてのキーワー

  8. Pythonによるデータ分析と可視化入門|pandasの基本を徹底解説

    Pythonによるデータ分析と可視化の概要 Pythonには、データ分析と可視化のための強力なライブラリが数多く用意されています。代表的なものとしては、NumPy、pandas、matplotlib、seabornなどが挙げられます。本記事では、その中でも中心的な役割を果たすpandasについて詳しく解説します。pandasはNumPyをベースに構築されたオープンソースライブラリで、高速なデータ分析やデータのクリーニング・前処理を効率的に行えます。さらに、pandas自体にも便利な可視化機能が組み込まれています。 pandasのインストール方法 pandasをインストールするには、ターミナル

  9. Pythonのさまざまなグラフでデータを可視化する方法

    Pythonには、初心者でも手軽に扱えるデータ可視化ライブラリが数多く用意されています。これらのライブラリは、小規模なデータセットから大規模なデータセットまで幅広く対応できる点が大きな魅力です。データ可視化で特に広く使われているPythonライブラリは以下のとおりです。MatplotlibPandasPlotlySeaborn本記事では、1つの固定データセットを題材に、さまざまな種類のグラフを描画することで、データを多角的に分析する方法を解説します。今回使用するのは、インドの2019年における人口推計(単位:千人)に関する次のデータセットです。国・地域年バリアント値インド2019Medium(

  10. PythonとScrapyで実現するWebスクレイピング入門:インストールからデータ抽出まで

    クローラー(Web巡回プログラム)を開発するためのフレームワークの中でも、特に優れているのが「Scrapy」です。Scrapyは人気の高いWebスクレイピング・クローリングフレームワークであり、高レベルな機能を提供することで、Webサイトからのデータ抽出を格段に簡単にしてくれます。本記事では、Scrapyのインストール方法から、実際にWebページを取得し、タイトルやリンクなどの情報を抽出するまでの一連の流れを解説します。ScrapyのインストールWindows環境へのScrapyのインストールは非常に簡単です。pipを使う方法と、Anacondaを利用している場合はcondaを使う方法の2通り

  11. ScrapingHubにScrapyスパイダーをデプロイする手順をわかりやすく解説

    Scrapyスパイダーとは Scrapyスパイダーは、Webサイト内のリンクをたどりながら各ページから情報を抽出するためのクラスです。すべてのスパイダーは、この基本クラスを継承して作成します。 Scrapinghubとは Scrapinghubは、Scrapyスパイダーを実行するためのオープンソースアプリケーションです。Web上のコンテンツを有用なデータや情報へと変換し、複雑な構造を持つページであってもデータ抽出を可能にします。 本記事では、Scrapinghubを使ってScrapyスパイダーをクラウド上にデプロイし、実行する方法を解説します。ローカルマシンを24時間365日稼働させ続けるこ

  12. Python(NLP)で使える可読性インデックスとは?主要な指標と実装方法を解説

    自然言語処理(NLP)とは、人間が日常的に使う言語をコンピュータに自動的に生成・理解させる技術に関する研究分野です。現在ではコンピュータ技術がほぼあらゆる業界に組み込まれており、NLPはますます注目度を高めています。本記事では、NLPの中でも「可読性(Readability)」というテーマに焦点を当てて解説します。可読性とは、あるテキストがどれほど読みやすく、理解しやすいかを示す概念です。 可読性インデックスとは 可読性インデックス(Readability Index)とは、テキストを読んで理解することの難易度(または容易さ)を数値で表した指標です。可読性を測定するテストにはさまざまな種類があ

  13. Pythonで理解する畳み込みニューラルネットワーク(CNN)の基礎とSobelフィルタによるエッジ検出

    画像認識はかつて、線形回帰や類似度の比較といった、より単純な手法によって行われていました。その結果は決して良いものではなく、手書き文字のアルファベットを認識するという単純なタスクさえ困難でした。畳み込みニューラルネットワーク(CNN)は、人間が画像を知覚する際の脳の神経活動を緩やかに模倣する、計算コストの低い手法を提供することで、従来のアプローチから一歩進んだ存在となっています。畳み込みニューラルネットワーク(CNN)の概要人間がさまざまな物体を認識できるようになる過程と非常に似ていて、コンピュータのアルゴリズムも、入力を汎化し、初めて見る画像に対して判断を下せるようになるまでに、何百万もの画

  14. FoliumパッケージでGoogleマップをプロットする方法【Python】

    Foliumは、さまざまな種類のLeafletマップを作成できる非常に強力なPythonライブラリです。Leaflet/Foliumで作成したマップはインタラクティブに操作できるため、ダッシュボード構築にも最適です。インストールFoliumのインストールはpipを使えば非常に簡単です。$pip install folium下のスクリーンショットのように、コンソール(cmd)で上記のコマンドを実行するだけで、pipがFolium本体と必要な依存パッケージをまとめてインストールしてくれます。基本のマップを作成するまずは最もシンプルな地図の表示例です。緯度・経度を指定し、ズームレベルやタイルの種類を

  15. Pythonでの画像処理入門!PillowとOpenCVで学ぶ基本操作

    Pythonには、画像処理に役立つ豊富なライブラリが用意されています。代表的なものは以下の通りです。 OpenCV − リアルタイムコンピュータビジョンを主眼とした画像処理ライブラリ。2D・3D特徴量ツールキット、顔認識やジェスチャー認識、ヒューマンコンピュータインタラクション、モバイルロボティクス、物体識別など、幅広い分野で活用されています。 NumPy / SciPy − 画像の操作や処理に利用される数値計算ライブラリ。 scikit-image − 画像処理向けの多数のアルゴリズムを提供するライブラリ。 Pillow(Python Imaging Library) − サムネイル作成、

  16. Pythonで画像に秘密のメッセージを隠す方法|Pillowとstepicで学ぶステガノグラフィ入門

    ステガノグラフィ(Steganography)とは、情報を目立たない形で隠す技術です。SHA1やMD5などのアルゴリズムでデータを暗号化することに重点を置く暗号技術(Cryptography)とは異なり、ステガノグラフィは、データ(ファイル、画像、メッセージ、動画など)を別のファイルや画像の中に埋め込み、その存在自体に気づかれないようにすることを目的としています。 この記事では、画像の見た目にほとんど変化を与えることなく、画像の中に情報を隠すシンプルなPythonプログラムを作成します。プログラムは大きく分けて2つの部分から構成されます。1つ目は、画像ファイルから秘密情報を取り出すデコード機能

  17. Pythonのf文字列(f-strings)とは?基本から応用例までわかりやすく解説

    Pythonには、文字列を整形するための新しい仕組みとして「f文字列(f-strings)」が用意されています。この機能はPython 3.6からPEP-498として導入されました。文字列リテラルの先頭に接頭辞「f」を付けることが名称の由来で、この「f」はformatting(書式設定)を意味し、f-stringsが文字列フォーマットに利用できることを示しています。 f-stringsを使うと、波括弧 {} の中に変数や式を直接埋め込めるため、従来の str.format() や % 演算子よりも簡潔で読みやすいコードを書けます。以下に、具体的な使用例をいくつか紹介します。 サンプル1:基本的

  18. 【Python】pyfigletを使って独自フォントのASCIIアートを表示する方法

    この記事では、Pythonを使ってテキストをユニークでおしゃれなスタイルで表示する方法を紹介します。同じ「Hello, Python」という文字列でも、フォントのスタイルを変えるだけで印象はまったく変わります。ターミナルの出力やCLIツールのバナーを華やかにしたいときに、ぜひ活用してみてください。pyfigletとはpyfigletは、通常の文字列をASCIIアート風のフォントに変換してくれるPythonライブラリです。数百種類のフォントが内蔵されており、数行のコードで個性的なテキスト表示を実現できます。インストールはターミナルで次のコマンドを実行するだけです。$ pip install py

  19. PythonとNLTKでストップワードを除去する方法【サンプルコード付き解説】

    自然言語処理(NLP)の基本的な考え方は、機械が少なくともある程度まで人間の介入なしにテキストの分析や処理を行えるようにするというものです。たとえば、テキストが何を意味しているのか、あるいは何を伝えようとしているのかを部分的に理解することなどが挙げられます。 テキストを処理する際、コンピュータは文章の中から不要なデータ(単語)や重要度の低いデータを取り除く必要があります。NLTKでは、このような役に立たない単語(データ)のことをストップワードと呼びます。これらを事前に除去しておくことで、データベースの容量を節約できるだけでなく、貴重な処理時間の浪費も防ぐことができます。 必要なライブラリのイン

  20. Pythonライブラリ「newspaper3k」でニュース記事をスクレイピング&キュレーションする方法

    Webページからコンテンツを抽出する技術は、データマイニングや情報検索など、さまざまな分野で活用されています。本記事では、新聞社や雑誌のWebサイトから情報を抽出できるPythonライブラリ「newspaper(newspaper3k)」の使い方を解説します。 このライブラリの主な目的は、新聞サイトなどを対象に記事を自動的に抽出し、キュレーションすることです。著者名、メイン画像、公開日、埋め込み動画、キーワード、記事の要約といった情報をまとめて取得できるのが特徴です。 インストール方法 まず、ターミナルで以下のコマンドを実行し、newspaperライブラリをインストールします。 $ pip

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:88/450  20-コンピューター/Page Goto:1 82 83 84 85 86 87 88 89 90 91 92 93 94