首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“_io.TextIOWrapper”对象不可调用的对象出现在一段代码上,而另一段代码上则没有。

“_io.TextIOWrapper”对象不可调用的对象出现在一段代码上,而另一段代码上则没有。
EN

Stack Overflow用户
提问于 2022-09-03 03:35:09
回答 1查看 21关注 0票数 1

所以我在jupyter笔记本上写代码:

代码语言:javascript
复制
txtpath='C:\\Users\\Desktop\\somefile.txt'
q=open(txtpath)
print(q.read())

结果没问题。但是,当我在jupyter笔记本的另一个选项卡上尝试相同的代码(字面意思是复制和粘贴)时,它会返回:

'_io.TextIOWrapper‘对象不可调用

我在想为什么会发生这种事?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-09-03 09:40:21

看起来,您可能打开了文件而没有关闭它。

打开文件的一个更安全的方法是这样:

代码语言:javascript
复制
txtpath='C:\\Users\\Desktop\\somefile.txt'

# this guarantees that the file closes
with open(txtpath, 'r') as f:
    data = f.read()

print(data)

with语句保证闭包,因此您不必记住close()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73589438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档