我想使用以下代码将文本文件读入一个字符串:
fname=examplefile
with open(fname,'r') as f:
# this way of reading the file gives a list of lines.
data_text = f.readlines()
# I want to assert what kind of data is data_text >>>list
print('data_text is',type(data_text))
# create a text out of the file
whole_text =(' '.joint(data_text))
#doc = nlp(data_text)
#sentences = [sent.string.strip() for sent in doc.sents]
#print(sentences[0:10])
我收到此错误:
AttributeError: 'str' object has no attribute 'joint'
错误出现在whole_text
等行中
这让我感到困惑,因为在错误之前我得到了确认:
data_text is <class 'list'>
所以data_text
是一个列表,但是python看到了一个字符串。
我在做什么错了?
在回答后进行编辑: 我的代码中有一个错字: 它是JOIN而不是JOINT 就这样 也就是说,当使用.read()时,字符串还包含\ n必须以某种方式删除的项目,仅用于那些考虑readlines与read()的项目 无论如何,我希望错误是 AttributeError:“列表”对象没有属性“关节” 并不是 AttributeError:“ str”对象没有属性“ joint”
注意
阅读
How to read a file line-by-line into a list?
Python - open file - readline - list - convert to string
Concatenate item in list to strings
无济于事
答案 0 :(得分:1)
答案 1 :(得分:1)
.joint不是有效的字符串方法,它是联接https://docs.python.org/3.7/library/stdtypes.html#str.join
答案 2 :(得分:0)
方法是join()
' '.join(yourlist) # ' ' is delimiter here