ChatGPTにpythonで入力された文字列を形態素に分解するコードを書いてもらいました。
ChatGPT指示への指示文 :
pythonで入力された文字列を形態素に分解するコードを書いてください
出力 :
Pythonで日本語の形態素解析を行う場合には、MeCabというライブラリが一般的に使用されます。MeCabは、日本語の文章を形態素に分割し、品詞情報を付与することができます。
以下は、MeCabを使って入力された文字列を形態素に分解するサンプルコードです。MeCabがインストールされていることを前提としています。
import MeCab
# MeCabのインスタンスを作成する
m = MeCab.Tagger()
# 入力された文字列を形態素解析する関数を定義する
def analyze(text):
node = m.parseToNode(text)
while node:
# 表層形(文字列)と品詞を取得して表示する
print(node.surface, node.feature)
node = node.next
# テスト用の文字列を定義する
text = "私は日本語が話せます。"
# 形態素解析を行う
analyze(text)
このコードでは、MeCab.Tagger()でMeCabのインスタンスを作成し、parseToNode()で入力された文字列を形態素に分割するノードを取得しています。次に、ノードをたどりながら、表層形(文字列)と品詞情報を取得して表示しています。
このコードを実行すると、以下のように出力されます。
私 名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
日本語 名詞,一般,*,*,*,*,日本語,ニホンゴ,ニホンゴ
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
話せ 動詞,自立,*,*,一段,未然形,話す,ハナセ,ハナセ
ます 助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス
。 記号,句点,*,*,*,*,。,。,。
このように、入力された文字列が形態素に分割され、それぞれの表層形と品詞情報が表示されました。
実行結果 :