Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで文字列のすべての出現箇所を別の文字列に置き換えるにはどうすればよいですか?


Pyhtonには、文字列クラスでreplaceというメソッドがあります。入力として、置き換える文字列と置き換える文字列を取ります。文字列オブジェクトで呼び出されます。このメソッドを次の方法で呼び出して、すべての「no」を「yes」に置き換えることができます。

>>> 'no one knows how'.replace('no', 'yes')
'yes one kyesws how'
>>> "chihuahua".replace("hua", "hah")
'chihahhah'

Pythonのreモジュールを使用して、正規表現を使用して同じ結果を取得することもできます。 re.sub(regex_to_replace、regex_to_replace_with、string)を使用して、文字列内の部分文字列を置き換えることができます。

たとえば、

>>> import re
>>> re.sub('hua', 'hah', 'chihuahua')
'chihahhah'

re.subは非常に強力であり、正規表現を使用して非常に微妙な置換を行うために使用できます。


  1. Pythonのバイナリ文字列ですべて1の部分文字列をカウントするプログラム

    バイナリ文字列sがあるとします。 「1」のみを含む部分文字列の数を見つける必要があります。答えが大きすぎる場合は、結果を10 ^ 9+7で変更します。 したがって、入力がs =100111の場合、出力は7になります。これは、1のみを含むサブ文字列が[1、 1、 1、 1、11であるためです。 、11および111] これを解決するには、次の手順に従います- a:=0 count:=0 範囲0からs-1のサイズのiの場合、do s[i]が0と同じ場合、 a:=0 それ以外の場合、 a:=a + 1 count:=count + a 返品数 例 理解を

  2. PythonPandas-DataFrame内のすべてのNaN要素を0に置き換えます

    NaN値を置き換えるには、fillna()メソッドを使用します。以下が、いくつかのNaN値を使用してMicrosoftExcelで開いたCSVファイルであるとしましょう- まず、必要なライブラリをインポートします- import pandas as pd CSVファイルからPandasDataFrameにデータをロードする- dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesData.csv") fillna()メソッドを使用してNaN値を0に置き換えます- dataFrame.fillna(0)