Python で文を単語に分割する
-
Python の
str.split()
関数を使用して文を単語に分割する - Python でリスト内包表記を使用して文を単語に分割する
-
Python の
nltk
ライブラリを使用して文を単語に分割する
このチュートリアルでは、Python で文を単語のリストに分割する方法について説明します。
Python の str.split()
関数を使用して文を単語に分割する
Python の str.split()
関数は、入力パラメーターとして区切り文字を受け取り、区切り文字に基づいて呼び出し元の文字列を複数の文字列に分割します。区切り文字を指定しない場合、str.split()
関数は空のスペースに基づいて文字列を分割します。次のコードスニペットは、str.split()
関数を使用して文を単語のリストに分割する方法を示しています。
sentence = "This is a sentence"
words = sentence.split()
print(words)
出力:
['This', 'is', 'a', 'sentence']
いくつかのデータを含む文字列変数 sentence
を宣言しました。次に、sentence
変数を sentence.split()
関数を使用して文字列のリストに分割し、結果を words
リストに保存しました。str.split()
関数は、Python で文を単語のリストに変換する最も簡単な方法です。
Python でリスト内包表記を使用して文を単語に分割する
リスト内包表記を使用して、文を単語のリストに分割することもできます。ただし、このアプローチは、str.split()
関数ほど単純ではありません。リスト内包表記を使用する利点は、取得した単語に対していくつかの操作を実行できることです。操作は、各単語に何かを追加することから、各単語から何かを削除することまで多岐にわたります。次のコードスニペットは、リスト内包表記と str.split()
関数を使用して文を単語に分割する方法を示しています。
sentence = "This is a sentence"
words = [word for word in sentence.split()]
print(words)
出力:
['This', 'is', 'a', 'sentence']
いくつかのデータを含む文字列変数 sentence
を宣言しました。次に、sentence
変数をリスト内包表記の文字列のリストに分割し、結果を words
リストに保存しました。このメソッドは、単語を単語
リストに保存する前に、取得した各単語を変更するのに役立ちます。
Python の nltk
ライブラリを使用して文を単語に分割する
nltk
または Natural 言語ツールキットライブラリは、Python でのテキスト処理に使用されます。外部ライブラリであるため、使用する前にインストールする必要があります。自然言語ツールキットをインストールするコマンドを以下に示します。
pip install nltk
インストールしたら、nltk.download()
関数を使用して punkt
パッケージをダウンロードする必要があります。この現象は、次のコードスニペットに示されています。
import nltk
nltk.download("punkt")
出力:
[nltk_data] Downloading package punkt to /root/nltk_data...
[nltk_data] Unzipping tokenizers/punkt.zip.
nltk
ライブラリ内の word_tokenize()
関数を使用して、特定の問題を解決できます。この関数は、入力パラメーターとして文字列を受け取り、それを複数のサブ文字列に分割します。次のコードスニペットは、nltk.word_tokenize()
関数を使用して文を単語のリストに分割する方法を示しています。
sentence = "This is a sentence"
words = nltk.word_tokenize(sentence)
print(words)
出力:
['This', 'is', 'a', 'sentence']
sentence
文字列を nltk.word_tokenize(sentence)
関数を使用して単語のリストに分割し、結果を words
リストに保存しました。最後に、words
リスト内の要素を表示しました。
str.split()
メソッドはこの特定の問題を解決する最も簡単な方法ですが、単語のリストを取得したら、split()
関数でできることはあまりありません。他の 2つの方法は、取得した単語に対して追加の操作を実行する場合に役立ちます。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn