AttributeError:“list”对象没有属性“lower”-Python

AttributeError:“list”对象没有属性“lower”-Python,python,string,list,Python,String,List,我正试图用下面的代码把这个句子转换成小写 import re temp =[] snow = nltk.stem.SnowballStemmer('english') for sentence in final_X: sentence = str(sentence.lower()) cleanr = re.compile('<.*?>') sentence = re.sub(cleanr, ' ', sentence)

我正试图用下面的代码把这个句子转换成小写

import re
temp =[]
snow = nltk.stem.SnowballStemmer('english')
for sentence in final_X:
    sentence = str(sentence.lower())                
    cleanr = re.compile('<.*?>')
    sentence = re.sub(cleanr, ' ', sentence)        
    sentence = re.sub(r'[?|!|\'|"|#]',r'',sentence)
    sentence = re.sub(r'[.|,|)|(|\|/]',r' ',sentence)        

    words = [snow.stem(word) for word in sentence.split() if word not in stopwords.words('english')]   # Stemming and removing stopwords
temp.append(words)
最终_X=温度

我在执行代码时遇到以下错误

AttributeError                            Traceback (most recent call last)
<ipython-input-31-f0e602a068f6> in <module>()
      3 snow = nltk.stem.SnowballStemmer('english')
      4 for sentence in final_X:
----> 5     sentence = str(sentence.lower())
      6     cleanr = re.compile('<.*?>')
      7     sentence = re.sub(cleanr, ' ', sentence)

**AttributeError: 'list' object has no attribute 'lower'**

这是不可能给你一个确切的修复,因为你的帖子不是一个可复制的错误。然而,错误信息非常清楚

句子属于列表类型,没有较低的方法

你可以想象这样的事情

sentence = ['This', 'is', 'a', 'sentence']
如果您想让它在一个字符串中全部小写,您可以执行以下操作

' '.join(sentence).lower()
这将使用空格将列表中的所有字符串连接成一个字符串,然后将结果小写,从而生成

'this is a sentence'
这里需要注意的是,根据你的帖子,我不知道这个句子是什么样的,只是它是一个列表

将strsentence.lower更改为strsentence.lower会使错误消失。但你可能更喜欢.连接句.小写或其变体。