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

Pythonのstring.whitespaceとは?空白文字を扱う定数の使い方を徹底解説

このチュートリアルでは、Python3のstringモジュールにあらかじめ定義されている定数string.whitespaceについて詳しく解説します。

string.whitespaceは、ASCII文字における空白文字をまとめて格納した文字列定数です。具体的には、以下の6種類の空白文字が含まれています。

  • スペース(space):半角空白「 」
  • タブ(tab):「\t」
  • ラインフィード(linefeed):「\n」(改行)
  • キャリッジリターン(return):「\r」
  • フォームフィード(formfeed):「\x0c」
  • バーティカルタブ(vertical tab):「\x0b」

string.whitespaceの基本的な使い方

まずは、string.whitespaceを実際に出力してみましょう。以下のコードでは、通常の文字列と空白文字の出力結果を比較しています。

# stringモジュールをインポート
import string

# 通常の文字列を出力
print("Hello")

# whitespaceの中身を出力
print(string.whitespace)

# 通常の文字列を出力
print('tutorialspoint')

実行結果

上記のコードを実行すると、次のような出力が得られます。

Hello
 	\n\r\x0b\x0c
tutorialspoint

出力を見ると、Hellotutorialspointの間に空白文字が表示されていることがわかります。一見すると空行のように見えますが、これはspace・tab・linefeedなどの目に見えにくい文字が順番に出力されたためです。repr()関数を使うと、含まれる文字を明示的に確認できます。

import string

print(repr(string.whitespace))
# 出力: ' \t\n\r\x0b\x0c'

実践的な活用例

string.whitespaceは、文字列から空白文字を取り除いたり、空白文字かどうかを判定したりする際に便利です。

例1:文字列からすべての空白文字を削除する

import string

text = "Hello\tWorld\nPython"
result = text.translate(str.maketrans('', '', string.whitespace))
print(result)  # 出力: HelloWorldPython

例2:文字が空白文字かどうかを判定する

import string

char = '\t'
if char in string.whitespace:
    print("この文字は空白文字です")
else:
    print("この文字は空白文字ではありません")

まとめ

string.whitespaceは、Python3のstringモジュールで定義されている空白文字の集合です。テキスト処理やデータクレンジングの場面で頻繁に活躍するため、ぜひ使い方をマスターしておきましょう。

本チュートリアルについて不明な点がある場合は、コメント欄でお気軽にご質問ください。

  1. Pythonのcasefold()メソッドとは?文字列の小文字変換と比較方法を解説

    Pythonのcasefold()は、文字列内の英字をすべて小文字に変換するためのメソッドです。lower()と似ていますが、より積極的な変換を行う点が特徴で、ドイツ語の「ß」が「ss」に変換されるなど、国際化対応において強力な働きをします。2つの文字列に対してcasefold()を適用すれば、大文字・小文字の違いを無視して値を一致させることができます。そのため、ユーザー入力の比較や検索処理などで非常に役立ちます。casefold()の基本的な使い方次の例では、文字列にcasefold()を適用し、すべて小文字に変換された結果を出力しています。コード例string = BestTutorial

  2. Pythonで文字列を空白で分割する方法:split()と正規表現の使い方

    Pythonでは、文字列を空白(スペース・タブ・改行など)で分割する場面がよくあります。ユーザー入力の解析やテキストデータの処理などがその代表例です。この記事では、空白で文字列を分割する代表的な2つの方法を、具体例とともにわかりやすく解説します。 方法1:split()メソッドを使う(おすすめ) 最もシンプルで一般的な方法は、文字列クラスに組み込まれた split() メソッドを使うことです。引数を指定しない場合、デフォルトの区切り文字として「空白文字」が使用され、連続した空白も自動的に適切に処理されます。 >>> Please split this string.spli