はじめに
この実験では、Python で文字列がすべて空白文字で構成されているかどうかをチェックする方法を学びます。実験ではまず、スペース、タブ、改行、復帰、垂直タブ、改ページなどの一般的な空白文字を定義します。次に、これらの文字とそれらがテキストの書式設定に与える影響を示す Python スクリプトを作成します。
この実験では、isspace() メソッドを使用して文字列が空白のみを含むかどうかを判断する方法を案内します。最後に、空白を含む文字列と空の文字列の違いを明確にし、Python プログラミングにおいてこれらの違いを理解する重要性を強調します。
空白文字を定義する
このステップでは、Python の空白文字について学びます。空白文字は、空のスペースを表す文字です。これらは、コードの解釈と表示に影響を与えるため、プログラミングにおいて重要です。空白を理解することは、クリーンで読みやすい Python コードを書くために不可欠です。
一般的な空白文字には以下のものがあります。
- スペース (``): 最も一般的な空白文字で、単語や文を区切るために使用されます。
- タブ (
\t): インデントに使用され、通常は 4 つのスペースを表します。 - 改行 (
\n): 行の終わりを示すために使用されます。 - 復帰 (
\r): 古いシステムでは、カーソルを行の先頭に戻すために使用されます。 - 垂直タブ (
\v): あまり使用されませんが、依然として空白文字です。 - 改ページ (
\f): 印刷時に次のページに進むために使用されます。
これらの文字を示す Python スクリプトを作成しましょう。
LabEx 環境で VS Code エディタを開きます。
~/projectディレクトリにwhitespace_demo.pyという名前の新しいファイルを作成します。touch ~/project/whitespace_demo.pyエディタで
whitespace_demo.pyファイルを開き、以下の内容を追加します。## Demonstrating whitespace characters space_char = " " tab_char = "\t" newline_char = "\n" carriage_return_char = "\r" vertical_tab_char = "\v" form_feed_char = "\f" print("This", space_char, "is", space_char, "separated", space_char, "by", space_char, "spaces.") print("This\tis\tseparated\tby\ttabs.") print("This" + newline_char + "is" + newline_char + "on" + newline_char + "multiple" + newline_char + "lines.") print("This" + carriage_return_char + "will overwrite the beginning of the line.") print("Vertical" + vertical_tab_char + "Tab") print("Form" + form_feed_char + "Feed")このスクリプトは、各空白文字に対する変数を定義し、それらを
print()文で使用してそれらの効果を示します。pythonコマンドを使用してスクリプトを実行します。python ~/project/whitespace_demo.py以下のような出力が表示されるはずです。
This is separated by spaces. This is separated by tabs. This is on multiple lines. will overwrite the beginning of the line. Vertical Tab Form Feed各空白文字が出力の書式設定にどのように影響するかに注目してください。改行文字は改行を作成し、タブ文字は水平方向の間隔を作成します。復帰文字は行の先頭を上書きします。垂直タブと改ページ文字は、使用しているターミナルによっては表示されない場合があります。
isspace() メソッドを使用する
このステップでは、Python の isspace() メソッドを使用して、文字列が空白文字のみで構成されているかどうかをチェックする方法を学びます。このメソッドは、ユーザー入力の検証やデータのクリーニングに非常に役立ちます。
isspace() メソッドは組み込みの文字列メソッドで、文字列内のすべての文字が空白文字(スペース、タブ、改行など)であり、かつ少なくとも 1 つの文字が存在する場合に True を返します。それ以外の場合は False を返します。
isspace() メソッドを示す Python スクリプトを作成しましょう。
LabEx 環境で VS Code エディタを開きます。
~/projectディレクトリにisspace_demo.pyという名前の新しいファイルを作成します。touch ~/project/isspace_demo.pyエディタで
isspace_demo.pyファイルを開き、以下の内容を追加します。## Demonstrating the isspace() method string1 = " " ## Contains only spaces string2 = "\t\n" ## Contains tabs and newlines string3 = " abc " ## Contains spaces and letters string4 = "" ## Empty string string5 = "123" ## Contains numbers print(f"'{string1}'.isspace(): {string1.isspace()}") print(f"'{string2}'.isspace(): {string2.isspace()}") print(f"'{string3}'.isspace(): {string3.isspace()}") print(f"'{string4}'.isspace(): {string4.isspace()}") print(f"'{string5}'.isspace(): {string5.isspace()}")このスクリプトは、空白文字と非空白文字のさまざまな組み合わせを持ついくつかの文字列を定義します。そして、
isspace()メソッドを使用して、各文字列が空白文字のみで構成されているかどうかをチェックします。pythonコマンドを使用してスクリプトを実行します。python ~/project/isspace_demo.py以下のような出力が表示されるはずです。
' '.isspace(): True ' '.isspace(): True ' abc '.isspace(): False ''.isspace(): False '123'.isspace(): Falseご覧のとおり、
isspace()は空白文字のみを含み、かつ空でない文字列に対してのみTrueを返します。
空文字列との区別をつける
このステップでは、Python で空白文字のみを含む文字列と空文字列を区別する方法を学びます。isspace() メソッドは空文字列に対して異なる動作をするため、この違いを理解することは重要です。
前のステップで学んだように、isspace() メソッドは、文字列内のすべての文字が空白文字であり、かつ文字列が空でない場合に True を返します。空文字列(文字が含まれていない文字列)に対しては、isspace() は False を返します。
前のステップの isspace_demo.py スクリプトを修正して、この違いを強調しましょう。
~/projectディレクトリの VS Code エディタでisspace_demo.pyファイルを開きます。スクリプトを修正して、空文字列に対するより明示的なチェックを含めます。
## Demonstrating the isspace() method and empty strings string1 = " " ## Contains only spaces string2 = "" ## Empty string print(f"'{string1}'.isspace(): {string1.isspace()}") print(f"'{string2}'.isspace(): {string2.isspace()}") if string2: print("string2 is not empty") else: print("string2 is empty") if string1.isspace(): print("string1 contains only whitespace") else: print("string1 does not contain only whitespace")このスクリプトには、
string2が空であるかどうかをチェックするif文が含まれています。また、string1が空白文字のみを含むかどうかもチェックします。pythonコマンドを使用してスクリプトを実行します。python ~/project/isspace_demo.py以下のような出力が表示されるはずです。
' '.isspace(): True ''.isspace(): False string2 is empty string1 contains only whitespaceこの出力は、
isspace()が空文字列に対してFalseを返し、if文がstring2を空文字列として正しく識別していることを明確に示しています。
まとめ
この実験では、Python の空白文字について学びました。空白文字は空のスペースを表し、コードの解釈や表示に影響を与えます。この実験では、スペース、タブ、改行、復帰、垂直タブ、改ページなどの一般的な空白文字を取り上げました。
whitespace_demo.py という名前の Python スクリプトを作成し、各空白文字に対して変数を定義し、print() 文で使用することで、これらの文字がテキストの書式設定や出力に与える影響を示しました。



