【Python】’NoneType’ object has no attribute ‘group’:エラー対処方法

pythonエラー対処_’NoneType’ object has no attribute ‘group’_アイキャッチ Python

Pythonのコーディング中に発生した「’NoneType’ object has no attribute ‘group’」のエラー対処の方法をご紹介します。

‘NoneType’ object has no attribute ‘group’ エラー対処

Regexオブジェクトを使用して、文字列のパターンマッチングをしようとしたときに、
‘NoneType’ object has no attribute ‘group’」というエラーが発生しました。

該当のコード

import re

line = 'ところでドーナツは好きかい'
reg = re.compile(r'ドーナツ')

m = re.match(reg,line)
print(m.group())

 

エラー発生時のコマンドプロンプト

エラーとして表示されている英語の意味を調べてみました。
返す値をうまく取得できていないようです。

・[NoneType] → 返す値がない
・[object has no attribute] → オブジェクトは属性をもっていない

 

解決方法

以下のコーディングに修正したところ、解決できました。
3行目の「line」に格納している文章を変更して、その他のコードは変更していません。

import re

line = 'ドーナツは好きかい'
reg = re.compile(r'ドーナツ')

m = re.match(reg,line)
print(m.group())

 

× → ’ところでドーナツは好きかい’
○ → ’ドーナツは好きかい’

変数 [line] に格納されている文字列の先頭に、

パターンマッチさせる文字列(ドーナツ)がないと、エラーになるようです。
 

Sponsored Links
Python
kirinote.com