Python 3.x ';设置';对象不能解释为整数
我有以下python代码:Python 3.x ';设置';对象不能解释为整数,python-3.x,Python 3.x,我有以下python代码: text = "this’s a sent tokenize test. this is sent two. is this sent three? sent 4 is cool! Now it’s your turn." from nltk.tokenize import sent_tokenize sent_tokenize_list = sent_tokenize(text) import numpy as np lenDoc=len(sent_tokeni
text = "this’s a sent tokenize test. this is sent two. is this sent three? sent 4 is cool! Now it’s your turn."
from nltk.tokenize import sent_tokenize
sent_tokenize_list = sent_tokenize(text)
import numpy as np
lenDoc=len(sent_tokenize_list)
features={'position','rate'}
score = np.empty((lenDoc, 2), dtype=object)
score=[[0 for x in range(sent_tokenize_list)] for y in range(features)]
for i,sentence in enumerate(sent_tokenize_list):
score[i,features].append((lenDoc-i)/lenDoc)
但它会导致以下错误:
TypeError Traceback (most recent call last) <ipython-input-27-c53da2b2ab02> in <module>()
13
14
---> 15 score=[[0 for x in range(sent_tokenize_list)] for y in range(features)]
16 for i,sentence in enumerate(sent_tokenize_list):
17 score[i,features].append((lenDoc-i)/lenDoc)
TypeError: 'set' object cannot be interpreted as an integer
()
13
14
--->15分=[[0表示范围内的x(已发送的标记化列表)]表示范围内的y(特征)]
16对于i,枚举中的句子(已发送标记化列表):
17分[i,特征].追加((lenDoc-i)/lenDoc)
TypeError:“set”对象不能解释为整数
range()
接受int值<代码>功能是一个集合,因此会引发错误。您在范围(已发送\u标记化\u列表)
中犯了同样的错误sent\u tokenize\u list
是一个列表值,而不是int。
如果你想让x和y成为特征
和已发送标记化列表
的索引,那么你必须使用这个:分数=[[0表示范围内的x(len(已发送标记化列表))]表示范围内的y(len(特征))]
但是,如果您希望x和y是特性
和已发送标记化列表
的值,则必须从该行中删除范围()