検索
ホームページバックエンド開発Python チュートリアルPython を使用して文字列のリスト内の数値の合計を取得する

Python を使用して文字列のリスト内の数値の合計を取得する

Python では、正規表現の使用、isdigital() とリスト内包表記の使用、分割と連結の使用など、さまざまな方法を使用して文字列リスト内の数値を合計できます。文字列を含むリストを操作する場合、これらの文字列から数値を抽出して合計する必要がある状況によく遭遇します。これは、テキスト ファイル、ログ ファイル、Web スクレイピングなどを操作する場合に特に便利です。この記事では、さまざまな例とアルゴリズムを使用して、これらの方法を理解します。

###アルゴリズム###

Python を使用して文字列のリスト内の数値の合計を求める一般的なアルゴリズムは次のとおりです:

    文字列のリストを入力として受け取る関数を定義します。
  • 文字列リスト内のすべての要素を文字列に連結します。
  • パターンまたはメソッドを適用して、文字列から数値を抽出します。
  • 抽出した値を整数に変換します。
  • 整数のリストを合計します。
  • 集計結果を戻り値として使用します。
  • 方法 1: 正規表現を使用する

正規表現は、文字列内のパターンを照合する効率的な方法を提供します。パターンを定義し、 re.findall() 関数を使用すると、文字列のリストからすべての値を抽出できます。これらの値は整数に変換され、合計されて最終結果が得られます。

###文法### リーリー

ここではリスト内包表記が使用されています

[int(num) for num in re.findall(pattern, ''.join(string_list))]

一致した文字列を整数に変換します。

Example の中国語訳は次のとおりです: Example

上の例では、3 つの要素を含む string_list があります。 string_list を引数として sum_numbers() 関数を呼び出します。正規表現パターン r"\d" は、リストの各要素内の 1 つ以上の数値と一致します。一致する数値はリスト内包表記を使用して抽出され、整数に変換されます。最後に、sum() 関数はこれらの数値の合計を計算します。

リーリー ###出力### リーリー

方法 2: isdigital() とリスト内包表記を使用する

このメソッドは、文字が数字であるかどうかを確認するために使用される

isdigital()

メソッドをリスト内包表記と組み合わせて使用​​します。文字列リスト内の各文字を反復処理し、数値以外の文字を除外することで、残りの数値を整数に変換できます。結果のリストを合計して、必要な合計を取得します。

###文法### リーリー

ここでは、リスト内包表記

[int(char) for item in string_list for char in item if char.isdigit()]

を使用して、string_list 文字の各要素を反復処理します。 isdigital() メソッドは、文字が数字であるかどうかを確認するために使用されます。

Example

の中国語訳は次のとおりです:

Example 以下の例では、前と同じ string_list があります。 string_list を引数として sum_numbers() 関数を呼び出します。リスト内包表記は、string_list の各要素の各文字を反復処理します。 isdigital() メソッドは、文字が数字であるかどうかをチェックし、数字である場合はそれを整数に変換します。次に、sum() 関数を使用して、結果の数値リストを合計します。 リーリー ###出力### リーリー 方法 3: 分割と結合を使用する

このメソッドでは、

join()

メソッドを使用して、文字列リストの要素が単一の文字列に連結されます。連結された文字列は単語のリストに分割されます。各単語を反復処理して数値以外の単語を除外することで、残りの単語を整数に変換できます。最後に、結果として得られた数値リストを合計して、目的の結果を取得します。

###文法### リーリー

ここでは、join() メソッドを使用して、

string_list

のすべての要素を文字列に連結します。

次に、split() メソッドを連結文字列に適用して、単語のリストに分割します。リスト内包表記

[int(num) for num in Numbers if num.isdigit()]

を使用して、数値リスト内の各要素を反復処理し、数値のみが含まれている場合は整数に変換します。 Example

の中国語訳は次のとおりです:

Example

次の例では、filter() 関数と

str.isdigit

をフィルター条件として使用し、文字列リストの各項目から数字だけを抽出します。次に、''.join() を使用してフィルタリングされた数値を結合し、int() を使用して結果を整数に変換します。 リーリー ###出力### リーリー ###結論は### この記事では、Python のさまざまなメソッドを使用して文字列のリスト内の数値の合計を見つける方法について説明しました。正規表現 (re) の使用、リスト内包表記での isdigital() メソッドの利用、分割および結合操作の 3 つの方法について説明しました。各方法には独自の利点があり、タスクの特定の要件に応じて使用できます。

以上がPython を使用して文字列のリスト内の数値の合計を取得するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はtutorialspointで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Pythonを使用した科学コンピューティングでアレイはどのように使用されていますか?Pythonを使用した科学コンピューティングでアレイはどのように使用されていますか?Apr 25, 2025 am 12:28 AM

Arraysinpython、特にvianumpy、arecrucialinscientificComputing fortheirefficienty andversitility.1)彼らは、fornumericaloperations、data analysis、andmachinelearning.2)numpy'simplementation incensuresfasteroperationsthanpasteroperations.3)arayableminablecickick

同じシステムで異なるPythonバージョンをどのように処理しますか?同じシステムで異なるPythonバージョンをどのように処理しますか?Apr 25, 2025 am 12:24 AM

Pyenv、Venv、およびAnacondaを使用して、さまざまなPythonバージョンを管理できます。 1)Pyenvを使用して、複数のPythonバージョンを管理します。Pyenvをインストールし、グローバルバージョンとローカルバージョンを設定します。 2)VENVを使用して仮想環境を作成して、プロジェクトの依存関係を分離します。 3)Anacondaを使用して、データサイエンスプロジェクトでPythonバージョンを管理します。 4)システムレベルのタスク用にシステムPythonを保持します。これらのツールと戦略を通じて、Pythonのさまざまなバージョンを効果的に管理して、プロジェクトのスムーズな実行を確保できます。

標準のPythonアレイでnumpyアレイを使用することの利点は何ですか?標準のPythonアレイでnumpyアレイを使用することの利点は何ですか?Apr 25, 2025 am 12:21 AM

numpyarrayshaveveraladvantages-averstandardpythonarrays:1)thealmuchfasterduetocベースのインプレンテーション、2)アレモレメモリ効率、特にlargedatasets、および3)それらは、拡散化された、構造化された形成術科療法、

アレイの均質な性質はパフォーマンスにどのように影響しますか?アレイの均質な性質はパフォーマンスにどのように影響しますか?Apr 25, 2025 am 12:13 AM

パフォーマンスに対する配列の均一性の影響は二重です。1)均一性により、コンパイラはメモリアクセスを最適化し、パフォーマンスを改善できます。 2)しかし、タイプの多様性を制限し、それが非効率につながる可能性があります。要するに、適切なデータ構造を選択することが重要です。

実行可能なPythonスクリプトを作成するためのベストプラクティスは何ですか?実行可能なPythonスクリプトを作成するためのベストプラクティスは何ですか?Apr 25, 2025 am 12:11 AM

craftexecutablepythonscripts、次のようになります

numpyアレイは、アレイモジュールを使用して作成された配列とどのように異なりますか?numpyアレイは、アレイモジュールを使用して作成された配列とどのように異なりますか?Apr 24, 2025 pm 03:53 PM

numpyarraysarasarebetterfornumeroperations andmulti-dimensionaldata、whilethearraymoduleissuitable forbasic、1)numpyexcelsinperformance and forlargedatasentassandcomplexoperations.2)thearraymuremememory-effictientivearientfa

Numpyアレイの使用は、Pythonで配列モジュール配列の使用と比較してどのように比較されますか?Numpyアレイの使用は、Pythonで配列モジュール配列の使用と比較してどのように比較されますか?Apr 24, 2025 pm 03:49 PM

NumPyArraySareBetterforHeavyNumericalComputing、whilethearrayarayismoreSuitableformemory-constrainedprojectswithsimpledatatypes.1)numpyarraysofferarays andatiledance andpeperancedatasandatassandcomplexoperations.2)thearraymoduleisuleiseightweightandmemememe-ef

CTypesモジュールは、Pythonの配列にどのように関連していますか?CTypesモジュールは、Pythonの配列にどのように関連していますか?Apr 24, 2025 pm 03:45 PM

ctypesallowsinging andmanipulatingc-stylearraysinpython.1)usectypestointerfacewithclibrariesforperformance.2)createc-stylearraysfornumericalcomputations.3)passarraystocfunctions foreffientientoperations.how、how、becuutiousmorymanagemation、performanceo

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません