2017-11-13 10 views
-1

私はPythonで初心者です。このコマンドをCMDで実行しようとすると、このエラーに直面しました。教えてください:return _compile(pattern、flags).findall(string)に関するエラーTypeError:予期される文字列またはバイト状オブジェクト

コード:

import re 
handle=open('regex_sum_41718.txt') 
for line in handle: 
    word=line.split() 
    print(type(word)) 
    y=re.findall('[0-9]+',word) 
print(y) 

エラー:

Traceback (most recent call last): 
    File "Assi_1.py", line 5, in <module> 
     y=re.findall('[0-9]+', word) 
    File "D:\Python\lib\re.py", line 222, in findall 
     return _compile(pattern, flags).findall(string) 
TypeError: expected string or bytes-like object 

おかげで多くのことを。

答えて

1

あなたはline.split()の周りに別のループを配置する必要があります。

for line in handle: 
    for word in line.split(): 
     print(type(word)) 
     y=re.findall('[0-9]+',word) 

そうでない場合wordがリストされ、文字列のみを検索することができます。

関連する問題