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

Python StartswithおよびEndswith:ステップバイステップガイド

Python startswith() 関数は、文字列が指定されたサブ文字列で始まるかどうかをチェックします。 Python endswith() は、文字列が部分文字列で終わっているかどうかを確認します。どちらの関数もを返します True または False


多くの場合、プログラミング中に文字列を操作するときは、文字列が特定の値で始まるか、特定の値で終わるかを確認する必要があります。

たとえば、ユーザーの電話番号を収集するプログラムを作成している場合、ユーザーが国コードを指定しているかどうかを確認することができます。または、ユーザーの名前がeで終わっているかどうかを確認するプログラムを作成している可能性があります あなたのアーケードが行っている特別なプロモーションのために。

組み込み関数startswith()はここにあります およびendswith() 入ってください。startswith() およびendswith() 文字列が特定のサブ文字列で始まるか終わるかをそれぞれ判断するために使用できます。

このチュートリアルでは、Pythonのstartswith()の両方を使用する方法について説明します。 およびendswith() 文字列が特定の部分文字列で始まるか、特定の部分文字列で終わるかを確認するメソッド。また、プログラムで使用されているこれらの各メソッドの例についても説明します。

文字列インデックスリフレッシャー

startWithとendsWithについて話す前に、Python文字列インデックスに関する知識を更新するために少し時間がかかる必要があります。

文字列は、数字、スペース、文字、記号などの文字のシーケンスです。リストの場合と同じ方法で、文字列のさまざまな部分にアクセスできます。

文字列内のすべての文字にはインデックス値があります。インデックスは、文字が文字列内にある場所です。インデックス番号は0で始まります。たとえば、文字列Python Substrings インデックス番号付き:

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

P y t h o n
S u b s t r i n g s
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

文字列の最初の文字はPです インデックス値は0です。最後の文字であるs 、のインデックス値は16です。各文字には独自のインデックス番号があるため、各文字の位置に基づいて文字列を操作できます。

Python Startswith

startswith() stringメソッドは、文字列が特定のサブ文字列で始まるかどうかをチェックします。文字列が指定されたサブ文字列で始まる場合、startswith() メソッドはTrueを返します。それ以外の場合、関数はFalseを返します。

Pythonのstartswith()の構文は次のとおりです。 方法:

string_name.startswith(substring, start_pos, end_pos)

startswith() withメソッドは、次の3つのパラメータを取ります。

  • 部分文字列 大きい方の文字列内でチェックされる文字列です(必須)
  • start_pos 部分文字列の検索を開始する開始インデックス位置です(オプション)
  • end_pos 部分文字列の検索を終了するインデックス位置です(オプション)

サブストリングパラメータは大文字と小文字を区別します 。したがって、sを探している場合 文字列では、小文字のsのインスタンスのみを検索します 。大文字のSを探したい場合 、その文字を指定する必要があります。さらに、Pythonのインデックス位置はで始まることに注意してください。 、start_posに影響します およびend_pos パラメーター。

startswith()を紹介する例を見ていきましょう 実行中のメソッド。

私たちはアーケードオペレーターであり、特別なプロモーションを行っているとしましょう。名前がJで始まるすべての顧客 アーケードで獲得したチケット1000枚ごとに200枚の追加チケットを受け取る権利があります。これらのチケットを利用するには、顧客はデスクでアーケードカードをスキャンする必要があります。このカードは、名前の最初の文字をチェックするプログラムを実行します。

これは、顧客の名前の最初の文字がJと等しいかどうかを確認するために使用できるコードです。 :

customer_name = "John Milton"

print(customer_name.startswith("J"))

コードは次のように戻ります:True。コードの最初の行で、customer_nameという変数を定義します。 お客様の名前を保存します。次に、startswith()を使用します “customer_nameかどうかを確認します ”変数はJで始まります 。この場合、お客様の名前はJで始まります 、したがって、プログラムはTrueを返します。

start_posを指定しない場合 またはend_pos 引数、startswith() 文字列の先頭で指定した部分文字列のみを検索します。

ここで、プロモーションを変更し、名前にsが含まれているユーザーのみを変更するとします。 フルネームの2番目と5番目の文字の間。お客様のフルネームにsが含まれているかどうかを確認できます このコードを使用して、フルネームの2番目と5番目の文字の間:

customer_name = "John Milton"

print(customer_name.startswith("s", 1, 5))

コードは次を返します:False。このコードでは、start_posの両方を指定しています。 およびend_pos パラメータ。それぞれ1と5に設定されます。これはstartswith()に通知します 文字sを検索する場合のみ 文字列の2番目と5番目の文字(インデックス値が1から5の文字)の間。

Python Endswith

endswith() 文字列のフォーマット方法を使用して、文字列が特定の値で終わっているかどうかを確認できます。 endswith() startswith()と同じように機能します メソッドですが、文字列の先頭で部分文字列を検索する代わりに、最後で検索します。

endswith()の構文は次のとおりです 方法:

string_name.endswith(substring, start_pos, end_pos)

これらのパラメーターの定義は、startswith()で使用されるものと同じです。 メソッド。

endswith()がどのように終了するかを示す例を見てみましょう メソッドはPythonで使用できます。航空会社を経営していて、顧客のクレジットカードでの払い戻しを処理したいとします。そのためには、カード番号の下4桁を知って、登録されているカード番号と照合できるようにする必要があります。

これがendswith()の例です 顧客から提供された4桁がファイルの4桁と一致するかどうかを確認するために使用されます:

on_file_credit_card = '4242 4242 4242 4242'

matches = on_file_credit_card.endswith('4242')

print(matches)

私たちのプログラムは次のように戻ります:True。この場合、お客様から4242の数字が提供されました 。 endswith()を使用しました それらの番号が私たちがファイルに持っていたものと一致したかどうかを確認する方法。この場合、登録されているクレジットカードは4242で終了しました。 、したがって、プログラムはTrueを返しました。

オプションのstart_posを使用することもできます およびend_pos 特定のインデックス位置で部分文字列を検索するための引数。

カフェを運営していて、顧客が注文したものすべてを保存する文字列があるとします。シェフは、注文にHam Sandwichが含まれているかどうかを知りたがっています 、および文字列の長さが24であることを認識しています。文字列の最後の5文字には、ORDERが含まれています。 。したがって、文字列の最初の5文字を​​スキップします。

この検索は、次のコードを使用して実行できます。

order = "ORDER Latte Ham Sandwich"

includes_ham_sandwich = order.endswith("Ham Sandwich", 0, 19)

print(includes_ham_sandwich)

コードは次を返します:True

この例では、Ham Sandwichを指定します サブストリングパラメータとして。

次に、を指定します start_posとして end_posを使用するためのパラメータ パラメータとstart_pos end_posを使用する場合、空白にすることはできません 。 end_posとして19を指定します 文字列の最後の5文字がORDERであるため、引数 、およびその前の文字は空白です。

文字列はHam Sandwichで終わります 、したがって、プログラムはTrueを返します。文字列がHam Sandwichで終わっていない場合 、それ以外の場合、サフィックスはFalseを返します。

Pythonはリストで終わります

さらに、endswith() substringとしてリストまたはタプルを取り込むことができます 引数。これにより、文字列が複数の文字列の1つで終わっているかどうかを確認できます。ファイル名が.mp3で終わっているかどうかをチェックするプログラムを作成しているとします。 または.mp4 。このチェックは、次のコードを使用して実行できます。

potential_extensions = ['.mp3', '.mp4']
file_name = 'music.mp3'

print(file_name.endswith(potential_extensions))

コードは次のように戻ります:True。この例では、potential_extensionsという配列を作成しました。 ファイル拡張子のリストを保存します。次に、file_nameという変数を宣言しました。 拡張子を確認したいファイルの名前を保存します。

最後に、endswith()を使用します 文字列がpotential_extensionsの拡張機能のいずれかで終わっているかどうかを確認するメソッド リスト。この場合、ファイル名は.mp3で終わります。 、potential_extensionsにリストされています リストなので、プログラムはTrueを返します。

結論

startswith() およびendswith() メソッドを使用して、Python文字列が特定のサブ文字列で始まるか終了するかをそれぞれ確認できます。各メソッドには、文字列内で検索を開始および終了する場所を指定できるオプションのパラメータが含まれています。

このチュートリアルでは、両方のstartswith()の使用方法について説明しました。 およびendswith() メソッド、および実際の各メソッドのいくつかの例を検討しました。これで、startswith()を使用して、文字列が部分文字列で始まるか、部分文字列で終わるかを確認する準備が整いました。 およびendswith() 専門家のような方法。


  1. Pythonインタープリター:ステップバイステップガイド

    Pythonインタープリターは、マシンに正しいバージョンのPythonがインストールされていることを確認しなくてもオンラインで存在するため、Pythonは非常にアクセスしやすく学習できます。この記事では、Pythonインタープリターとは何かについて説明し、オンラインで使用できる、より人気のある、初心者向けのインタープリターをいくつかリストします。 Pythonプログラムはどのように実行されますか? Pythonは、Javaと同様に、インタプリタ言語またはコンパイル言語として完全に分類することはできません。両方のほんの少しです。 この場合にコンパイルされるということは、どの

  2. Pythonのstartswith()およびendswidth()関数

    Pythonには、Stringクラスにstartswith(string)メソッドがあります。このメソッドは、検索するプレフィックス文字列を受け入れ、文字列オブジェクトで呼び出されます。このメソッドは次の方法で呼び出すことができます- >>> 'hello world'.startswith('hell') True >>> 'hello world'.startswith('nope') False 同様に、指定された文字列の最後で検索するサフィックス文字列を受け入れるメソッドで終了します。